rm -r shell-Skript (mein erstes *.sh)
Möchte ich löschen Sie einige Ordner auf einem Ubuntu 8.04 Server.
Ich würde gerne ein Skript starten, um diesen Ordner löschen.
Starte ich eine ssh-Sitzung zum server.
Mein Skript sieht wie folgt aus:
#!/bin/bash
rm -r /var/lib/backuppc/pc/PC1/
rm -r /var/lib/backuppc/pc/PC2/
Ich das Skript wie dieses:
sh scriptname.sh
Aber ich bekomme diese Meldung:
rm: cannot remove `/var/lib/backuppc/pc/PC1/\r': No such file or directory
rm: cannot remove `/var/lib/backuppc/pc/PC1/\r': No such file or directory
Tut mir Leid, aber ich bin nicht immer ein shell-Skript unter linux.
Ich denke, dass es meine Schuld, weil ich nicht wissen, die Grundlagen 🙁
Kann mir jemand helfen? Ich habe zum löschen von ~80 Ordner... 🙁
Hast du dein script auf Windows? Es hat einen Wagenrücklauf (
Ohne herablassend klingen zu wollen, kann ich vermuten, dass, wenn dies ist dein erstes Skript, bitte sehr vorsichtig über die Verwendung von
Ja, ich habe es auf Windows mit dem Notepad++.
Ubuntu 8 ist 7 Jahre alt!
Mein Opa mochte Ubuntu 8 so viel.
\r
) und line feed (\n
) am Ende jeder Zeile. Unix/Linux will nur einen Zeilenvorschub \n
. Auf dem server ist, versuchen Sie, dos2unix scriptname.sh
.Ohne herablassend klingen zu wollen, kann ich vermuten, dass, wenn dies ist dein erstes Skript, bitte sehr vorsichtig über die Verwendung von
rm -r
und (wenn Sie auf einer Unix-Plattform) nie es als root ausführen. Ich sage dies aus bitterer eigener Erfahrung.Ja, ich habe es auf Windows mit dem Notepad++.
Ubuntu 8 ist 7 Jahre alt!
Mein Opa mochte Ubuntu 8 so viel.
:-)
Wenn er nicht tot wäre, würde er Sie bitten, sich zu bewegen auf 14!InformationsquelleAutor JLN | 2015-03-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es sieht aus wie es einige "junk" - Zeichen nach deinen Ordner-Namen (nämlich
\r
). Um sicher zu sein, gebencat -A scriptname.sh
und prüfen Sie, ob Sie können einige seltsame Zeichen am Ende der Zeilen. Wenn dem so ist, ich denke das einfachste für dich (da haben Sie wenige Zeilen), um manuell löschen Sie die enden dieser Linien und re-Typs wieder. (Ich bin reden über die letzten zwei oder drei Zeichen)Geben Sie
cat -A scriptname.sh
zu sehen, ob das Zeichen verschwunden. Wenn dem so ist, sollten Sie gut zu gehen mit Ihrem code.Also ich vermute, dass dein problem gelöst? Darf ich vorschlagen, dass Sie mit dem schreiben beginnen Ihre bash-code in Linux? Für eine "in-command-line" - editor können Sie
nano
(einfacher) odervim
(vielleicht ein wenig zu hoch). Für ein "graphical-user-interface" - editor können Siegedit
odergeany
(beide color code-Skript, so ist es viel einfacher zu visualisieren).Danke TomCho! - ja, mein problem ist gelöst. - Ich nehme einen Blick auf Ihre vorgeschlagenen Editoren.
Hey, ich bin nicht sagen, weil ich will extra-Punkte oder so etwas, aber wenn eine Antwort löst Ihr problem-klicken Sie auf das "Häkchen" rechts neben der Antwort. So können Sie zeigen der Gemeinde, dass Sie Ihr Problem gelöst, dass mit, verdienen Sie Punkte, andere Leute verdienen Punkte und jeder kann schnell sehen, welche Antworten für Sie tätig. Diese Weise die gesamte Gemeinschaft profitiert. Sie können mehr darüber Lesen Sie hier 😉
InformationsquelleAutor TomCho