Альтернатива должна переименовать файлы:
for FILE in Days/*
do
DAY=`cut --delimiter '_' --fields 1 ${FILE}`
MONTH=`cut --delimiter '_' --fields 2 ${FILE} | cut --delimiter '.' --fields 1
NEWFILE=${MONTH}_${DAY}.tex
cp ${FILE} ${NEWFILE}
done
или Вы могли использовать touch
команда так, чтобы ls -1t
работал бы.
Просто поместите команды, которые Вы хотите выполнить в специальном файле и выполнить его как сценарий оболочки. Любой путем вызова оболочки с аргументом:
sh your_commands
или путем предварительного ожидания команд с hashbang и маркировки файла как исполняемый файл с chmod a+x your_commands
:
#!/bin/sh
your commands
go
here
который заставит его вести себя как регулярный двоичный файл, и Вы сможете просто выполниться
/path/to/your_commands
Кроме того, можно также использовать source
функциональность Вашей оболочки, которая выполняет команды из файла в текущей оболочке (в противоположность spwaning новая оболочка, которая является тем, что два выше сделают):
source your_commands
или
. your_commands
(у обоих есть то же значение).
Добро пожаловать для Укладки Exchange, и также к Linux Mint!
Вы спрашиваете, существует ли лучший путь, чем вставка в терминал для выполнения длинного ряда команд. Как это происходит, существует: сохраните команды в файл и выполните его как сценарий оболочки.
Например, если Вы сохраняете свои команды в ~/scripts/myscript.sh
(~
сокращение для Вашего корневого каталога), можно выполнить его путем ввода этих команд:
# change directory to where the script is
cd ~/scripts
# run the script with bash (most scripts are bash scripts)
bash myscript.sh
Одна вещь высматривать: каталог от того, куда Вы работаете bash myscript.sh
будет использоваться в качестве рабочего каталога. Если Ваш сценарий говорит о файле 50m_physical/lakes.sh
, который находится в Вашем ~/mylakesproject
каталог, затем это будет работать:
cd mylakesproject
bash ~/scripts/myscript.sh
# ~/mylakesproject/50m_physical/lakes.sh exists
и это не будет работать:
cd myotherproject
bash ~/scripts/myscript.sh
# ~/myotherproject/50m_physical/lakes.sh does not exist
и ни один не будет это:
cd scripts
bash myscript.sh
# ~/scripts/50m_physical/lakes.sh does not exist
Удача, и развлекайтесь!