Tag: bash

Разрешение отклонено при получении файла md5sum с помощью сценария оболочки?

Я запускаю свой ниже сценарий оболочки, который получает md5sum файлов в моем каталоге PRIMARY #!/bin/bash export PRIMARY=/data01/primary for entry in "$PRIMARY"/* do local_md5sum=/usr/bin/md5sum "$entry" | awk '{print $1}' echo local_md5sum done Как только я запускаю над сценарием оболочки и пытаюсь распечатать значение md5sum моих файлов, я всегда получаю – ./md5checksum_check_1.sh: line 7: /test01/prime/pp_monthly_1980_58_200003_5.data: Permission denied […]

Почему нет / bin / login в выводе ps при входе в систему

Я хотел следить за тем, что происходит, когда тестовый пользователь входит в мою систему CentOS 6.4, поэтому я попробовал это для опроса ps для /bin/login и strace pid, когда он появляется: until [[ $(ps -ef|grep -q [l]ogin)$? -eq 0 ]]; do true; done && strace pidof /bin/login Я SSH'd из другой системы и проверил в […]

cp: не может статировать ошибку – когда имя файла имеет азиатские символы

Я просто пытаюсь скопировать файлы, используя cp -r /home/user/source/ /home/user/destination/ но он бросает мне ошибку cp: cannot stat /source/filename.xxx для некоторых файлов. Когда я искал эту ошибку, я нашел некоторые соответствующие вопросы, такие как это и это, хотя они имеют ту же ошибку, что и команда cp но причины разные. Их решения не затрагивают мою […]

Распаковка файла с восклицательным знаком из командной строки в сценарии bash

Я пытаюсь сделать простой скрипт, который распаковывает ZIP-файл с восклицательным знаком в его имени: #!/bin/bash UNZIP='/usr/bin/unzip' CUT="/usr/bin/cut" GREP="/usr/bin/grep" FILENAME="test" FILE="/usr/local/var/www/htdocs/"$FILENAME"\!3.zip" UNZIPPEDFOLDER=$($UNZIP ${FILE} | $GREP -m1 'creating:' | $CUT -d' ' -f5-) echo $UNZIPPEDFOLDER но когда скрипт выполняется, unzip возвращает: unzip: cannot find or open /usr/local/var/www/htdocs/test\!3.zip, /usr/local/var/www/htdocs/test\!3.zip.zip or /usr/local/var/www/htdocs/test\!3.zip.ZIP. Он отлично работает, когда нет «!» войдите […]

Почему имена файлов трубопроводов в VIM прерываются, когда я возвращаюсь в оболочку?

Я искал несколько файлов с помощью find, и я хотел открыть их все в вкладках в Vim. Поэтому я попробовал это: find . | xargs fgrep -l myExpression | xargs vim -p Это сработало отлично, если только я не закончил и не вышел из Vim, все, что я напечатал в vim, было невидимым, а backspace […]

Bash конвертировать строку в массив строк?

У меня есть строка вроде этого: 8080 "ac ac df asd" 9019 "fv adfs" 1 "123 da 123x" Есть ли умный способ преобразовать это в массивы, подобные этому, используя Bash? 8080 "ac ac df asd" 9019 "fv adfs" 1 "123 da 123x"

Как передать аргумент из сценария bash в 'x-terminal-emulator -e bash -c'?

Предположим, у меня есть этот скрипт: x-terminal-emulator -e bash -c 'echo hello > ~/text' Я называю его foo.sh и делает его исполняемым. Если я выполню этот скрипт, у меня будет текстовый файл в моей домашней папке, содержащий слово «привет». Теперь, если я изменю его на это: x-terminal-emulator -e bash -c 'echo $1 > ~/text' … […]

OSX: удалить все соответствующие сертификаты по командной строке

Использование сценария оболочки для удаления всех соответствующих сертификатов. Я нашел список сертификатов, используя: security find-certificate -c "certificatename" -a -Z|grep SHA-1|awk '{ print $NF }' Результат выглядит следующим образом: $ bash delete-cert.sh 62D58774F9329FA1F96A2BB0C090130305B879ED 94B149CFDF32BDB1C9C28179FB586291167EC235 Теперь я хочу запустить команду delete для каждого из этих хэшей SHA-1 , как я могу это сделать? sudo security delete-certificate -Z […]

Сценарий оболочки с циклом for и "array"

Как я могу использовать этот sh-скрипт для цикла и массива. Я хотел бы назвать домены с for loop внутри if . Пример: for domain in $DOMAINS do printf '%s\n' "$domain" done Итак, если вы добавите это под, то тогда printf должен быть как? Например, wlstop я хотел бы назвать, где printf с wls wlstop $domain […]

Позиция курсора в vi при открытии файла

vishex () { echo '#!/bin/bash' > $1; chmod +x $1; vi $1 } Целью вышеуказанной функции является наличие псевдонима для быстрого и удобного создания сценариев bash. Я хотел бы, чтобы при открытии файла курсор не стоял бы в линии Шебанга, а на строке ниже. Я пробовал что-то вроде echo 'blabla\n', echo "blala\n", printf "blala\n" без […]

Linux и Unix - лучшая ОС в мире.