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

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

2
Копіювання файлів з декількома розширеннями
Я хотів би скопіювати файли з декількома розширеннями в один каталог призначення. Наприклад, я можу використовувати таку команду, щоб скопіювати всі .txt файли в робочому каталозі до каталогу під назвою destination: cp -v *.txt destination/ І я можу використовувати наступне, щоб скопіювати всі .png каталоги в робочий каталог destination: cp …
22 bash  shell  wildcards  cp 

4
Чому судо ігнорує псевдоніми?
Я запускаю Ubuntu 10.04 і використовую upstartдля управління демонами. Моя корпоративна програма запускається як демон, і її потрібно запускати як root через різні привілеї. Наприклад: sudo start my-application-long-ID sudo stop my-application-long-ID etc Я хотів би ввести aliasскорочення цих команд як щось подібне: alias startapp='sudo start my-application-long-ID' і запускати його як …
22 shell  sudo  alias 

17
Як знайти рядок з найменшими символами
Я пишу сценарій оболонки, використовуючи будь-які загальні команди UNIX. Я повинен отримати рядок, що містить найменше символів (включено пробіл). Тут може бути до 20 рядків. Я знаю, що можу використати head -$L | tail -1 | wc -mдля пошуку числа символів рядка L. Проблема полягає в тому, що єдиним методом, …

3
Чи є якась основна різниця при порівнянні змінної у вигляді рядка або як int
З цікавості під час порівняння баш-змінної (її значення є integer) можна перевірити її на певне заздалегідь визначене значення або оголошено як intабо як string. Приклад сценарію : #!/bin/bash f1() { [ "$1" == "1" ] && echo "$FUNCNAME: \"1\" compared as string" } f2() { [[ "$1" -eq 1 ]] …
22 bash  shell  test 

3
Tilde (~) всередині робочого каталогу Unix
Отже, я працюю в середовищі UNIX, і я помітив, що всередині мого робочого каталогу, що знаходиться в милях від мого будинку UNIX, є ~. Тепер, колись у минулому, я rm -rf ~зі свого робочого каталогу закінчив стерти домашній каталог і мусив залучати ІТ. Я не хочу робити це знову. Водночас …
22 shell  filenames  home 

1
Linux: як перенаправити stdout & stderr на реєстратор?
У мене є програма, яку мені потрібно запустити при запуску, вона має вихід на stdout та stderr, який я хочу переспрямувати до системного журналу за допомогою команди logger. Що в моєму сценарії запуску - це ти: / home / dirname / application_name -v | реєстратор 2> & 1 & Це …

4
Як Linux має справу зі скриптами оболонки?
Для цього питання розглянемо сценарій bash shell, хоча це питання має бути застосовано до всіх типів скрипту оболонки. Коли хтось виконує сценарій оболонки, чи завантажує Linux одразу весь скрипт (можливо, в пам'ять) чи він читає команди скриптів по черзі (рядок за рядком)? Іншими словами, якщо я виконую скрипт оболонки і …

2
Bash не читає .bashrc, якщо не вводиться вручну
bashне буде джерелом .bashrcз інтерактивного терміналу, якщо я вручну не запускаю bashз терміналу: $ bash або вручну його джерело: $ source ./.bashrc або працює: $ st -e bash Ось кілька корисних результатів, які я сподіваюся: $ echo $TERM st-256color $ echo $SHELL /bin/sh $ readlink /bin/sh bash $ shopt login_shell …
22 linux  bash  shell  bashrc 

4
Чому немає shebang в .bashrc / .bash_profile?
Простий запит: я щойно зрозумів, що ніколи не бачив шебанга поверх .bashrcсценарію, що приводить мене до думки, що система використовує оболонку за замовчуванням для її джерела при вході ( ${SHELL}). Я розмірковую над причинами, чому це так, тобто чи вважається поганою звичкою використовувати для запуску сценарію входу щось інше, ніж …

3
Як ви надсилаєте програми командного рядка безпосередньо на задній план?
Я вже знаю, що натискання ctrl+zзупиняє додаток, то я можу відправити додаток на задній план за допомогою bgкоманди, але це означає, що існує короткий період часу, коли додаток зупинено. Як я можу надсилати додаток безпосередньо на задній план, не зупиняючи його?

4
Чому деякі команди "зависають" термінал до їх закінчення?
Іноді ви запускаєте програму з терміналу, скажімо, lxpanel† . Термінал не поверне вас до підказки, він зависне. Ви можете натиснути Ctrl+, Cщоб повернутися до підказки, але це вб'є lxpanel. Однак натискання клавіші Alt+ F2(що спливає вікно, щоб взяти команду) і запуск lxpanelпрацює витончено. Чому це? Що відрізняється між запуском команди …

8
Використання sed для перетворення нових рядків у пробіли
Скажімо, у мене є змінна оболонки, $stringяка містить текст з декількома новими рядками, наприклад: string="this is a test" Я хотів би перетворити цей рядок у новий рядок, new_stringде всі розриви рядків перетворюються на пробіли: new_string="this is a test" Я намагався: print $string | sed 's/\n/ /g' але це не спрацювало …
22 shell  sed 


5
Експортувати змінну env, щоб бути доступною для всіх підрозділів, і можливо змінити?
Припустимо, я маю export MY_VAR=0 в ~/.bashrc. У мене відкритий термінал gnome, і в цьому терміналі я змінюю $MY_VARзначення на 200. Отже, якщо я echo $MY_VAR в цьому терміналі, 200показано. Тепер я відкрив ще одну вкладку в своєму терміналі gnome, і так echo $MY_VAR ... а замість цього 200я 0. …

11
Інструмент в UNIX для віднімання дат
Чи є в Solaris UNIX якийсь інструмент (тому інструмент GNU не доступний) для віднімання дат? Я знаю, що в Linux ми gawkможемо відняти одну дату від іншої. Але в Solaris максимум, який ми маємо, - це nawk(покращений awk), який не може виконувати обчислення дати. Також я не можу використовувати perl. …
22 shell  solaris  awk  utilities  date 

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