О скрипте в .sh [закрыто]

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

] AFAIK нет механизма автоматического fsck, только если обнаружены несоответствия.

Однако вы выполняете fsck в . Позвольте мне предисловие к этому с отказом от ответственности, что если у вас есть регулярные проблемы с нечистыми файловыми системами, даже если вы полностью отключите свою систему, у вас возникнут серьезные проблемы и их возможное fsck может принести больше вреда, чем пользы! с некоторыми параметрами ядра.

sudo nano /etc/default/grub

найти строку, которая говорит

GRUB_CMDLINE_LINUX_DEFAULT

и добавить

к существующим вещам там.

да здесь должен делать то же, что и ваш FSCKFIX=yes в /etc/default/rcS или в руководстве fsck -fy. Лично я думаю, что preen будет более безопасным, но затем он будет зависать при запуске, если на диске потребуется еще несколько исправлений, которые fsck не считает «безопасными» и требует взаимодействия с пользователем.

run 12]

sudo update-grub

обновить группу и проверить ее с помощью

grep fsck /boot/grub/grub.cfg 

или посмотреть с редактором в /boot/grub/grub.cfg

. Если вы затем перезагрузитесь, файловая система должен быть проверен, вы можете проверить последний раз, когда он был проверен (должно быть ваше время загрузки) с помощью

sudo dumpe2fs -h /dev/your/device | grep checked
dumpe2fs 1.43.5 (04-Aug-2017)
Last checked:             Sun Feb 18 08:53:31 2018
-3
задан 24 February 2018 в 01:38

3 ответа

В вашем скрипте есть две основные проблемы:

, чтобы прочитать что-то из stdin и поместить его в переменную с именем titre, вам нужно
read titre
(без предшествующего $). Это поместит ваш вход в переменную $titre. Чтобы заменить буквальное слово titre содержимым переменной $titre, вам нужно
sed -i "s/titre/$titre/" ~/mal-project/sources/anime-list

Колики (${titre} против $titre) являются только необходимо четко указать, где переменная заканчивается, если ситуация неоднозначна. Предположим, вы хотите заменить литерал titre содержимым переменной $titre плюс текст deux. Наивный подход был бы

s/titre/$titredeux/

, но здесь titre заменили бы ничем (пустая строка), потому что нет переменной $titredeux. Следовательно, мы пишем

s/titre/${titre}deux/

, чтобы пояснить, что переменная на самом деле просто $titre.

3
ответ дан 22 May 2018 в 12:56

В вашем скрипте есть две основные проблемы:

, чтобы прочитать что-то из stdin и поместить его в переменную с именем titre, вам нужно read titre (без предшествующего $). Это поместит ваш вход в переменную $titre. Чтобы заменить буквальное слово titre содержимым переменной $titre, вам нужно sed -i "s/titre/$titre/" ~/mal-project/sources/anime-list

Колики (${titre} против $titre) являются только необходимо четко указать, где переменная заканчивается, если ситуация неоднозначна. Предположим, вы хотите заменить литерал titre содержимым переменной $titre плюс текст deux. Наивный подход был бы

s/titre/$titredeux/

, но здесь titre заменили бы ничем (пустая строка), потому что нет переменной $titredeux. Следовательно, мы пишем

s/titre/${titre}deux/

, чтобы пояснить, что переменная на самом деле просто $titre.

3
ответ дан 17 July 2018 в 20:07

В вашем скрипте есть две основные проблемы:

, чтобы прочитать что-то из stdin и поместить его в переменную с именем titre, вам нужно read titre (без предшествующего $). Это поместит ваш вход в переменную $titre. Чтобы заменить буквальное слово titre содержимым переменной $titre, вам нужно sed -i "s/titre/$titre/" ~/mal-project/sources/anime-list

Колики (${titre} против $titre) являются только необходимо четко указать, где переменная заканчивается, если ситуация неоднозначна. Предположим, вы хотите заменить литерал titre содержимым переменной $titre плюс текст deux. Наивный подход был бы

s/titre/$titredeux/

, но здесь titre заменили бы ничем (пустая строка), потому что нет переменной $titredeux. Следовательно, мы пишем

s/titre/${titre}deux/

, чтобы пояснить, что переменная на самом деле просто $titre.

3
ответ дан 23 July 2018 в 20:51

Другие вопросы по тегам:

Похожие вопросы: