Вопросы с тегом «shell»

Оболочка является интерфейсом командной строки Unix. Вы можете вводить команды в оболочке в интерактивном режиме или писать сценарии для автоматизации задач. Используйте этот тег для вопросов, относящихся к / bin / sh и большинству совместимых оболочек (ash, bash, ksh, zsh,…). Для сценариев оболочки с ошибками, пожалуйста, проверьте их в http://shellcheck.net перед публикацией здесь.

4
Понимание IFS
Следующие несколько тем на этом сайте и StackOverflow были полезны для понимания того, как IFSработает: Что такое IFS в контексте цикла? Как зациклить строки файла Bash, читайте построчно из файла, с IFS Но у меня все еще есть несколько коротких вопросов. Я решил спросить их в том же посте, так …
71 shell 

1
Как изменить оболочку cron (sh на bash)?
Можно ли заставить команды в crontab работать с bash вместо sh? Я знаю, что вы можете передавать команды для bash -c, но это раздражает, и я все равно никогда не использую sh.
70 shell  cron 

9
Как добавить дату в файл резервной копии
Мне нужно сделать резервную копию файла, и я хотел бы иметь временную метку как часть имени, чтобы ее было легче различать. Как бы вы вставили текущую дату в команду копирования? [root@mongo-test3 ~]# cp foo.txt {,.backup.`date`} cp: target `2013}' is not a directory [root@mongo-test3 ~]# cp foo.txt {,.backup. $((date)) } cp: …
70 shell  date  cp 

8
Как я могу сделать так, чтобы iconv заменил входной файл на преобразованный вывод?
У меня есть скрипт bash, который перечисляет все файлы * .php в каталоге и применяется iconvк нему. Это получает вывод в STDOUT. Поскольку при добавлении -oпараметра (по моему опыту) фактически записывается пустой файл, вероятно, до того, как произойдет преобразование, как я могу настроить свой сценарий так, чтобы он выполнял преобразование, …

12
Как проверить, существует ли переменная в операторе if?
Мне нужно проверить существование переменной в ifзаявлении. Что-то с эффектом: if [ -v $somevar ] then echo "Variable somevar exists!" else echo "Variable somevar does not exist!" И самый близкий вопрос к этому был этим , который фактически не отвечает на мой вопрос.
70 shell  variable  test 

4
Как распечатать только дубликаты значений из текстового файла?
Предположим, что есть столбец числовых значений, например: File1: 1 2 3 3 3 4 4 4 5 6 Я хочу вывод: 3 4 То есть только повторные строки. Есть ли инструменты командной строки, чтобы узнать это в Linux? (Примечание: значения отсортированы по номерам).

3
Что «3> & 1 1> & 2 2> & 3» делает в сценарии?
Я видел эту строку в скрипте: DEVICE=`dialog --inputbox "Festplatten-Laufzeit auslesen. Gebe Sie das gewünschte Device an: " 0 70 "" 3>&1 1>&2 2>&3` Что такое 3>&1 1>&2 2>&3 делать? Я знаю, что 1 = stdout и 2 = stderr, но для чего 3и &для чего?
69 shell 


2
Почему Ctrl-D (EOF) выходит из оболочки?
Вы буквально «заканчиваете файл», вводя эту escape-последовательность, т.е. является ли сеанс интерактивной оболочки воспринимается оболочкой как реальный файловый поток, как и любой другой файловый поток? Если да, то какой файл? Или сигнал Ctrl+ Dявляется просто заполнителем, который означает, что «пользователь завершил ввод данных, и вы можете завершить работу»?

6
Почему установка переменной перед командой разрешена в bash?
Я только что столкнулся с несколькими ответами, такими как разбор текстового файла с разделителями ... который использует конструкцию: while IFS=, read xx yy zz;do echo $xx $yy $zz done < input_file где IFSпеременная устанавливается перед readкомандой. Я читал ссылку на bash, но не могу понять, почему это законно. Я пытался …

2
В чем разница между «realpath» и «readlink -f»
Я много читал о realpathкоманде и о том, как она устарела, readlink -fпоскольку сейчас рекомендуется. В некоторых местах я также видел, что причина, по которой был введен realpath, заключалась в отсутствии такой функциональности в readlink, и что после того, как он был введен, realpath больше не был необходим, и его …
68 shell  command 


6
Есть ли простая команда для вывода столбцов с разделителями табуляции?
Например, у меня есть файл (производится с echo -e "var1\tvar2\t\var3\tvar4" > foo), которые выводятся как: $ cat foo case elems meshing nlsys uniform 2350 0.076662 2.78 non-conformal 348 0.013332 0.55 scale 318 0.013333 0.44 smarter 504 0.016666 0.64 submodel 360 .009999 0.40 unstruct-quad 640 0.019999 0.80 unstruct-tri 1484 0.01 0.88 …

1
Зачем оценивать вывод ssh-agent?
Для того, чтобы бежать, ssh-agentя должен использовать eval $(ssh-agent) Почему я должен evalна выходе ssh-agent? Почему он не предназначен для того, чтобы я мог его запустить? Примечание: обратные галочки (`) удалены, поскольку они устарели. Вы можете прочитать об этом здесь, например .
67 shell  ssh  ssh-agent  eval 

9
Поиск предыдущей команды с префиксом, который я только что набрал
Мы можем использовать стрелки вверх и вниз для навигации по истории команд. В некоторых IDE, таких как Matlab, если мы что-то вводим, а затем нажимаем клавиши со стрелками, мы прокручиваем только те команды истории, которые начинаются с того, что мы ввели. Это действительно удобно, но в терминале оболочки это не …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.