Запитання з тегом «shell»

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

4
ідентифікуйте файли з символами, що не належать до ASCII, або у файлі, що не друкуються
У каталозі розміром 80 ГБ з приблизно 700 000 файлів є деякі імена файлів з неанглійськими символами у назві файлу. Окрім того, що копітко перебирається через список файлів, є: Простий спосіб перелічити або іншим чином визначити ці імена файлів? Спосіб генерації символів, які можна друкувати не англійською мовою - ті …

5
Як я можу вбити і чекати, коли фонові процеси завершаться в сценарії оболонки, коли я Ctrl + C це?
Я намагаюся налаштувати скрипт оболонки, щоб він запускав фонові процеси, а коли я Ctrlcсценарій оболонки, він вбиває дітей, а потім виходить. Найкраще, що мені вдалося придумати, це це. Здається, що kill 0 -INTсценарій також вбиває сценарій перед тим, як чекати, тому сценарій оболонки гине до завершення дітей. Будь-які ідеї, як …

5
Навіщо використовувати подвійні лапки в [[]] тесті?
Скажімо, у нас є два цілих числа в bash-скрипті: value1=5 value2=3 Тоді навіщо нам використовувати подвійні лапки у разі тесту? Наприклад: if [[ "$value1" -eq "$value2" ]] Чому б просто не скористатися наступним? if [[ $value1 -eq $value2 ]] Для мене подвійні цитати не мають жодного сенсу.
23 bash  shell  quoting  variable  test 

4
Чому $ RANDOM не включений у висновок 'env'?
Я знаю env, що це команда оболонки, її можна використовувати для друку списку змінних поточного середовища. Наскільки я розумію, RANDOMце також змінна середовище. То чому, при запуску envна Linux, вихід не включає RANDOM?

6
Чи можливо програмі отримати кількість пробілів між аргументами командного рядка в POSIX?
Скажіть, якщо я написав програму з наступного рядка: int main(int argc, char** argv) Тепер він знає, які аргументи командного рядка передаються йому, перевіряючи вміст argv. Чи може програма виявити скільки пробілів між аргументами? Як коли я набираю їх у bash: ibug@linux:~ $ ./myprog aaa bbb ibug@linux:~ $ ./myprog aaa bbb …

1
Що саме буфер прокрутки та прокрутки?
Що таке "прокрутка" та "буфер прокрутки" в таких програмах, як bashі screen, і як вони відносяться до tty, запущених програм та stdin / stdout / stderr? Ось єдине визначення "прокрутки", яке я знайшов поки що (у вікі архівану ): Прокрутка - це функція, реалізована в текстовій консолі, щоб дозволити користувачеві …

3
Виконайте команду під час входу в систему
У настільній системі Linux я хочу виконати команду, коли користувач увійде в систему. Прочитавши деякі інші пости, я спробував вставити команду, ~/.bashrcале безуспішно. Більше того, система використовує графічний інтерфейс для входу користувача, тому команда не повинна стосуватися запуску оболонки. Я також намагався додати команду до одного зі скриптів, що містяться …
23 shell  scripting  login 



2
Видаліть усі файли, починаючи зі знака питання
У мене папка, в якій я маю близько 4k файлів. Деякі з цих файлів починаються з аа ?чи !символу. Мені потрібно видалити їх, але не можу знайти вираз, який би це зробив: rm -f ./?* просто видаляє все. Я, можливо, можу використовувати grepна ls і передавати його через xargsта переміщувати …

3
bash shell - код віддаленого захоплення скрипта і вихідний код скрипта?
Я хочу використовувати shell для виклику сценарію на віддаленому сервері. Я хотів би зафіксувати вихід цього сценарію (його протокольні повідомлення) та вихідний код, який він повертає. Якщо я це роблю: ssh user@server /usr/local/scripts/test_ping.sh echo "$?" Я отримую вихідний код, але не можу захоплювати повідомлення віддаленого журналу. Якщо я це роблю: …
23 bash  shell  ssh  remote 


4
Паралельно чотири завдання ... як це зробити?
У мене в каталозі є маса зображень PNG. У мене є програма під назвою pngout, яку я запускаю для стиснення цих зображень. Ця програма викликається сценарієм, який я зробив. Проблема полягає в тому, що цей сценарій робить по черзі щось подібне: FILES=(./*.png) for f in "${FILES[@]}" do echo "Processing $f …

5
Відновлення з встановлення оболонки кореня на поганий файл
Скажімо, я пішов і зробив безглузді речі, такі як використання 'chsh' для зміни оболонки кореневого користувача на поганий шлях до файлу. Майбутні входи до кореневого облікового запису різко завершаться, посилаючись на / bin / те, що не знайдено, і завантажують вас назад на екран входу. Заборонити режим відновлення або вставити …
23 shell  users  login 

8
Як передавати вихід з одного процесу на інший, але виконувати лише якщо перший має вихід?
Як я можу переписати цю команду лише на електронну пошту, якщо є вихід з mailq | grep? mailq | egrep 'rejected|refused' -A 5 -B 5 | mail -s 'dd' email@email Це можливо навіть на одній лінії? Див. Перевірка, чи труба порожня, та запустіть команду над даними, якщо це не більш …
23 shell  pipe 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.