Мне нужно построить корзину в оболочке. У корзины есть следующие функции: get( -g
), put( -p
) и remove from trashcan( -r
).
Итак, я попытался скомпилировать это ( gcc -o trashcan.sh
), но получил fatal error: no input files
. Я в правильном каталоге. Я не знаю, в чем дело. Пожалуйста, помогите, я новичок в этом.
#!/bin/bash
mkdir("ti3_trash",S_IRWXU)
clear() {
echo -e "Clear Trashcan? (y|n)"
read -a
if [[ "$a" = "n" ]] || [[ "$a" = "N" ]]; then
exit 0
else
cd ~/ti3_trash && rm -rf files/*
rm -r info/*
fi
}
list() {
echo -e "current contents of the Trashcan:"
ls ~/ti3_trash/files
}
case "$1" in
-p) mv $2 ~/ti3_trash/files
;;
-r) clear
;;
-g) cd ~/ti3_trash/files && mv $2 $HOME
;;
*) list
;;
esac
решение1
вы используете не тот инструмент. GCC компилирует код C. вы создаете код bash, который интерпретируется во время выполнения. все, что вам нужно сделать, это дать ему разрешение на выполнение. взгляните на страницу руководства chmod man chmod
и решите, какие разрешения вы хотите ему предоставить. или просто запуститеchmod 711 [your file name]