1 votes

extraire if_index sans grep de scutil --dns

J'utilise le grep pour extraire les interfaces actives de la sortie de la commande scutil avec la commande --dns option.

$ scutil --dns | grep 'if_index'

Je soupçonne que si la machine d'un utilisateur a une langue système différente (espagnol, chinois, etc.), le texte 'if_index' changera et la commande mentionnée ci-dessus ne produira pas le bon résultat. Mes soupçons sont-ils fondés ? Si oui, quelqu'un pourrait-il me dire quelle est la bonne façon d'effectuer l'opération ci-dessus ?

3voto

slm Points 4018

Si vous regardez l'exécutable lui-même, /usr/sbin/scutil avec le strings vous pouvez voir que ces chaînes sont codées en dur directement dans l'exécutable.

$ strings /usr/sbin/scutil | grep 'if_index'
  if_index : %d (%s)

De plus, la sortie de cette CLI reste la même lorsque vous essayez de modifier le paramètre LANG=.. o LC_ALL=.. les variables d'environnement. Par exemple :

$ LANG="zh_CN.UTF-8" scutil --dns | grep 'if_index'
  if_index : 10 (en0)

$ LC_ALL="zh_CN.UTF-8" scutil --dns | grep 'if_index'
  if_index : 10 (en0)

En faisant cela avec un autre outil CLI tel que git traduit la sortie :

$ LC_ALL="zh_CN.UTF-8" git --help
git [--version] [--help] [-C <>] [-c <>=<>]
           [--exec-path[=<>]] [--html-path] [--man-path] [--info-path]
           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
           [--git-dir=<>] [--work-tree=<>] [--namespace=<>]
           <> [<>]

 Git 

git help tutorial
   clone      
   init        Git 

Tout ceci m'amène à penser que la sortie ne changera pas.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X