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

Запитання щодо скриптів оболонки, виконуваних файлів, які інтерпретуються оболонкою (bash, zsh тощо).

4
vim: створити файл з бітом + x
Чи є спосіб встановити +xбіт на скрипт під час створення? Наприклад, я запускаю: vim -some_option_to_make_file_executable script.sh і після збереження я можу запустити файл без додаткових переміщень. пс. Я можу запускатись chmodіз vimконсолі або навіть із неї, але це трохи дратує, тому що vimпропонує запропонувати перезавантажити файл. Також прикро набирати chmodкоманди …

2
Як я можу видалити всі файли в папці, до якої не було доступно протягом певного часу?
Я хотів би запустити роботу за нічний крон, що видаляє всі файли в папці, до якої не було доступно протягом тижня або більше. Який найефективніший спосіб зробити це в баші?

1
Яка різниця між .bashrc та .inputrc
Я новачок у системі Unix, і мені цікаво створювати спеціалізовані функції та конфігурації у файлах налаштування, таких як .bashrcі .inputrc. Однак я не розумію відмінностей між ними. Наприклад, коли я створював псевдоніми, я вкладав їх .bashrc. Example 1: alias ...='cd ../../' Коли я створюю такі операції, як клавіша зі стрілкою, …

4
Як зробити bash glob струнною змінною?
Інформація про систему ОС: ОС X bash: GNU bash, версія 3.2.57 (1) -випуск (x86_64-apple-darwin16) Фон Я хочу, щоб машина часу виключала набір каталогів і файлів із усіх моїх проектів git / nodejs. Мої каталоги проектів є, ~/code/private/і ~/code/public/тому я намагаюся використовувати цикл bash для цього tmutil. Проблема Коротка версія Якщо …

2
Як отримати ім'я блокового пристрою від імені пристрою перегородки?
Я шукаю портативний спосіб отримати назву пристрою батьківського блоку (наприклад /dev/sda) з урахуванням імені пристрою перегородки (наприклад /dev/sda1). Я знаю, що міг би просто скинути останнього персонажа, але це не спрацювало б у деяких випадках: Зчитувачі карт MMC, як правило, мають такі назви /dev/mmcblk0, а їхні розділи мають назви /dev/mmcblk0p1(наприклад, …

4
Давши дві фонові команди, закінчіть решту, коли будь-яка програма виходить
У мене простий скрипт bash, який запускає два сервери: #!/bin/bash (cd ./frontend && gulp serve) & (cd ./backend && gulp serve --verbose) Якщо друга команда завершиться, здається, що перша команда продовжує працювати. Як я можу змінити це так, що якщо будь-яка команда закінчується, інша припиняється? Зауважте, що нам не потрібно …

3
Негативні аргументи на голову / хвіст
Варіанти цього питання, безумовно, задавались декілька разів у різних місцях, але я намагаюся видалити останні Mфайли з файлу без удачі. Другий найбільш проголосували відповідь на це питання рекомендує зробити наступне , щоб позбутися від останнього рядка в файлі: head -n -1 foo.txt > temp.txt Однак, коли я спробую це в …

5
Як я можу скидати привілеї root на скрипти оболонки?
Опція "--up" у OpenVPN зазвичай використовується для маршрутизації тощо. Отже, вона обробляється до того, як OpenVPN скасує привілеї root для запуску як ніхто. Однак я посилаюся на сценарії оболонки, які потрібно запускати як непривілейований користувач. Як це зробити? Я вивчив привілеї Drop Process , особливо відповіді поліномів та Тайлера, але …

3
надійний код повернення фонового процесу
Припустимо наступний фрагмент баш-коду: foo > logfile 2>&1 & foo_pid=$! while ps -p$foo_pid do ping -c 1 localhost done wait $foo_pid if [[ $? == 0 ]] then echo "foo success" fi Чи можна припустити, що він $?дійсно містить код повернення, fooа не код повернення ping? Якщо відповідь на це …


1
Завантаження декількох файлів через FTP за допомогою curl
Я намагаюся завантажити всі текстові файли в поточній папці через FTP на місце сервера за допомогою curl. Я спробував наступний рядок: curl -T "{file1.txt, file2.txt}" ftp://XXX --user YYY де XXX - IP-адреса сервера, а YYY - ім’я користувача та пароль. Я можу успішно перенести file1.txt на сервер, але він скаржиться …
14 shell-script  ftp  curl 

4
проаналізуйте одне поле з масиву JSON в масив bash
У мене є вихід JSON, який містить перелік об'єктів, що зберігаються у змінній. (Я, можливо, не фразую це право) [ { "item1": "value1", "item2": "value2", "sub items": [ { "subitem": "subvalue" } ] }, { "item1": "value1_2", "item2": "value2_2", "sub items_2": [ { "subitem_2": "subvalue_2" } ] } ] Мені …

3
echo або print / dev / stdin / dev / stdout / dev / stderr
Я хочу надрукувати значення / dev / stdin, / dev / stdout та / dev / stderr. Ось мій простий сценарій: #!/bin/bash echo your stdin is : $(</dev/stdin) echo your stdout is : $(</dev/stdout) echo your stderr is : $(</dev/stderr) я використовую наступні труби: [root@localhost home]# ls | ./myscript.sh [root@localhost …

4
Проведіть цикл через папку та список файлів
У мене папка з назвою "sample" і в ній є 3 файли. Я хочу написати скрипт оболонки, який буде читати ці файли всередині зразка папки та розміщувати його на HTTP-сайті за допомогою curl. Я написав наступне для переліку файлів всередині папки: for dir in sample/*; do echo $dir; done Але …

1
Як я можу запитати пароль у графічному інтерфейсі під час використання sudo в скрипті?
Я використовую Trisquel GNU / Linux із середовищем робочого столу GNOME Flashback. Мені потрібна підказка пароля GUI для користувача для виконання команди sudoв скрипті. Прикладом розглянемо наступний сценарій: zenity --question --text="Do you want to install this package?" if [[ $? -eq 0 ]]; then sudo apt-get install package else zenity …

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