![]() |
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici. |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| awk, premier ignorer le nombre de lignes. | trey85stang | De programmation et de script Shell | 8 | 05-21-2008 05:44 AM |
| Ignorer certaines lignes avec des mots de comparaison de fichiers | jakSun8 | De programmation et de script Shell | 2 | 03-13-2008 12:11 AM |
| Comment puis-je ignorer que les lignes qui ont # au début? | csaha | De programmation et de script Shell | 1 | 01-30-2006 03:35 AM |
| Faites sed ignorer lignes | Scarlos | De programmation et de script Shell | 2 | 07-21-2005 11:33 AM |
| Suppression de lignes en double ignorer la casse | hellsd | UNIX pour les nuls Questions et réponses | 17 | 12-02-2004 10:47 AM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Supprimer les lignes commençant par #
Existe-t-il un moyen de faire un script shell lire un fichier, ou de la liste, et sauter chaque ligne contient des # au début, ou ne tient pas compte du contenu de départ après un # en ligne?
Je suis à la recherche d'imiter la façon de commenter dans un shell script fonctionne normalement. De cette manière, je peux commenter mon texte et des listes de fichiers de mon processus de scripts et d'ignorer des lignes de commentaires. Merci les gars. ![]() |
|
||||
|
Si vous voulez faire seulement un couple des choses avec la sortie, le filtre vous fichier source dans un pipeline: Code:
grep -v '^[[:space:]]*#' /path/to/your/file | your_commands si vous voulez faire des choses avec votre commentaire stripped-fichier, enregistrez le fichier dans un déshabillé fichier temporaire, et l'utilisation utiliser le fichier temporaire pour le reste de la procédure: Code:
grep -v '^[[:space:]]*#' /path/to/your/file >/tmp/stripped_source Notez que j'utilise ^ [[: space:]] * au début de l'expression régulière à cause des lignes qui sont complètement observations peuvent encore contenir des grands espaces. Si vous souhaitez également supprimer les lignes vides, ne Code:
egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' /path/to/file >/tmp/stripped_file Dernière édition par hadarot; au 08.18.2005 09:53 PM.. |
|
||||
|
Si vous voulez que votre script de se comporter comme le ksh lui-même (ne pas tenir compte de la part d'une ligne après un "#", mais l'utilisation de la partie avant lui), vous pouvez effectuer les opérations suivantes (remplacer "<spc>" avec un espace littéral, "<onglet > "avec un onglet char): Code:
script sed 's/#.*$/;s/^[<spc><tab>]*//;s/[<spc><tab>]*$//;/^$/d' file content of file # this is a line with comments # this too, but starting with blanks command 1 # this line contains an inline comment command 2 "#" # this too, but my script would be confused result command 1 command 2 " Hélas, le script échoue sur la deuxième ligne, mais pour mettre ces délices, il fonctionne. Bakounine |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|