Запись имени файла в себя Linux / fedora.
У меня сейчас небольшая дилемма, и я пишу небольшой сценарий оболочки, который создает 10 файлов, а затем в каждом файле записывается его имя.
Вот что у меня есть до сих пор:
for f in {0..9}.txt
do
echo Hello, this is the first line of '#$f' > "File${f}"
done
Таким образом, выходные данные для каждого файла должны быть:
Hello, this is the first line of file0
Hello, this is the first line of file1
И т. д.
1 ответ:
При использовании одинарных кавычек оболочка не будет расширять то, что находится внутри них. Таким образом,
'#$f'
рассматривается как буквально строка#$f
вместо того, чтобы быть расширенным до значения$f
. Попробуйте вместо этого:for f in {0..9}.txt; do echo "Hello, this is the first line of file #$f" > "File${f}" done
Пример:
$ cat File3.txt Hello, this is the first line of file #3.txt