Wie zur Eingabe eines Kommentars auf csh?
In bash
ich verwendet #
Eingabe Kommentar. Auch auf interaktive Sitzung.
bash-3.2$ #
bash-3.2$ #
bash-3.2$ #
bash-3.2$
csh
spuckt Fehler für diese. Wie kann ich die Eingabe einige Kommentar auf interaktive csh
Sitzung? In anderen Worten, ich bin auf der Suche nach einem Weg, um 100% sicher Kommentar in csh
.
root@freebsd9:~ # #
#: Command not found.
root@freebsd9:~ # # 3e
#: Command not found.
root@freebsd9:~ # #
#: Command not found.
root@freebsd9:~ #
- nur so zum Spaß in der interaktiven csh löschen Sie alle Dateien mit der Endung " mit einem hash mit
rm *#
. Setzen Sie, dass in einem Skript und es kommt etwas ganz anderes. - Wenn es stimmt, ist es wirklich schrecklich! Und ich will nicht, um es zu beweisen mich!
- ach ja, etwas habe ich gelernt die harte Weise, vor vielen Jahren, erstellen Sie ein Skript zum Aufräumen emacs autosave-Dateien.. bash scheint zu müssen, um ein Leerzeichen vor dem"#, um einen Kommentar anzugeben, die durch die Art und Weise.
- Ein
#
Kommentar kann am Anfang einer Zeile. Ansonsten müssen Sie ein Leerzeichen trennt Sie von der vorangehenden token.echo foo#bar
prints "foo#bar";echo foo #bar
prints "foo". - Bitte Lesen Sie meine aktuelle Antwort. Ich war falsch, wie
:
arbeitet in csh (im Gegensatz zur tcsh).
Du musst angemeldet sein, um einen Kommentar abzugeben.
Interaktive csh oder tcsh nicht Kommentare. Die
#
- Zeichen leitet einen Kommentar nur in einem Skript. (Dies ist anders als das Verhalten von sh und seine Derivate, wie die bash.) Unter Angabe dercsh
Mann Seite (ab Solaris 9, eine von den übrigen Systemen, wocsh
ist nicht nur ein symbolischer Link auftcsh
):Den Punkt, denke ich, ist, dass die interaktiven Befehle brauchen keine Kommentare.
Wenn Sie tcsh, die Sie tun können, etwas ähnliches mit dem built-in
:
Befehl, der nichts tut:(wo
%
stellt den shell-prompt und:
ist der Befehl). Sie zitierte argument ist eine gute Idee; ansonsten, wenn der Befehl wird nicht ausgeführt, es kann eine gewisse Wirkung haben:Beachten Sie, dass seit
:
ist ein Befehl, muss es durch ein Leerzeichen gefolgt werden.Den
:
Befehl wurde ursprünglich eingeführt, in einer sehr frühen version der Bourne-shell, oder vielleicht sogar davor.Jedoch die
/bin/csh
version des:
- Befehl erlaubt keine Argumente, so dass es nutzlos wie ein Kommentar-Ersatz:(Ich wusste gar nicht, dass, wenn ich anfangs gepostet diese Antwort. Ich muss es getestet haben, mit tcsh statt auf eine echte csh.)
Seit
:
funktioniert nicht in reinen csh, ist die nächste beste Lösung ist wohl die Verwendungecho
und umleiten der Ausgabe:Obligatorische link: http://www.perl.com/doc/FMTEYEWTK/versus/csh.whynot
csh
. Und nur so zum Hinweis, ich wollte das für copy & paste eine Menge code, der nur als einen schnellen REPL.Für den Verweis, ich mag zu beachten, mein Aktueller workaround. Es ist mit
echo
.Dies ist der beste Weg, die ich finden konnte.
#!/bin/tcsh
Linie, können Sie einfach normalen#
Kommentare.Verwenden # für interaktive Kommentare in der tcsh oder csh, dies scheint in den meisten Fällen funktionieren:
Es kann ausgeführt werden, indem der Benutzer interaktiv oder in einem .tcshrc oder .cshrc Konfigurationsdatei entsprechend.
(Der alias kann natürlich anders benannt sein, wie Sie vielleicht wünschen, gelten die normalen Beschränkungen.)
Hinweis: als Keith Thompson oben erwähnt, wird dies immer noch Fehler geben, wenn Ihr Kommentar enthält umleiten Zeichen wie
>
oder>>
, aber dieser Weg scheint nicht wirklich erzeugen ein unerwünschtes redirect-Datei. Rund um die Kommentar in einfache Anführungszeichen ('
) ist noch ein workaround.Prüfen Sie, ob Ihr Skript hat UNIX die EOL-Format. Hat einige problem mit Windows EOL-Format.