Je suis en cours d' exécution un script Perl tiers écrit telle qu'elle exige un fichier de sortie pour le drapeau de sortie, -o
.
Malheureusement, le script semble nécessiter un fichier réel, c'est-à-dire que les utilisateurs doivent créer un fichier vide filename.txt
avec 0 octet, puis entrer ce fichier vide sur la ligne de commande du script
perl script1.pl -o filename.txt
Question: Comment créer un fichier vide dans un script bash? Si l'on essaie simplement perl script1.pl -o filename.txt
, le script donne une erreur indiquant que le fichier n'existe pas.
bash
shell-script
shell
files
ShanZhengYang
la source
la source
touch filename.txt
Réponses:
Utilisez la
touch
commande.touch filename.txt
.la source
echo -n >file
Utilisez la commande null (
:
) redirect (> filename
) trick (:>
), car elle sera tronquée à zéro ou créera le fichier nommé.(Cela échouera si le shell définit une option NOCLOBBER.)
la source
>|
vers clobber, donc:>| filea
- documenté dans le manuel> filename.txt
le ferais, pas besoin de:
. Ou>> filename.txt
si nous ne voulons pas le jeter s'il existe.:
rend le script plus susceptible d'accomplir sa tâche avec d'autres shells, par exemple Zsh.Vous pouvez également toujours utiliser perl.
la source