Wie kann ich mit dem Terminal unter OS X Folgendes tun?
Erstellen Sie eine Datei mit dem Namen .inputrc
im Home-Verzeichnis eines Benutzers und fügen Sie diese Zeile ein:
set completion-ignore-case On
quelle
Wie kann ich mit dem Terminal unter OS X Folgendes tun?
Erstellen Sie eine Datei mit dem Namen .inputrc
im Home-Verzeichnis eines Benutzers und fügen Sie diese Zeile ein:
set completion-ignore-case On
Schnelle Antwort
touch ~/.inputrc
echo "set completion-ignore-case On" >> ~/.inputrc
Erläuterung
Erstellen Sie zuerst die Datei:
touch ~/.inputrc
Fügen Sie dann den Inhalt der Datei hinzu:
echo "set completion-ignore-case On" >> ~/.inputrc
touch
Erstellt eine leere Datei (vorausgesetzt, die ~/.inputrc
Datei existiert noch nicht). echo
Schreibt Text in die "Standardausgabe" (kurz "stdout"), die normalerweise auf Ihrem Bildschirm angezeigt wird. Aufgrund der Umleitung ( >>
) wird die Ausgabe jedoch an umgeleitet ~/.inputrc
. Bei diesem Setup wird die Zeile an die Datei angehängt.
Wenn es ~/.inputrc
bereits existiert und Sie den Inhalt löschen (bereinigen) möchten , und dann die Zeile darin schreiben (dh eine Datei nur mit dieser Textzeile erstellen ), gehen Sie wie folgt vor:
echo "set completion-ignore-case On" > ~/.inputrc
Der einzelne Pfeil ( >
), auch bekannt als "größer als", weist Sie echo
an, eine Datei mit nur dem angegebenen Text als Inhalt der Datei zu erstellen, anstatt den Inhalt an das Ende der Datei zu schreiben. ( echo
Die Datei wird tatsächlich nicht erstellt. Die Shell erstellt die Datei und verwirft vorhandene Inhalte. Der echo
Befehl schreibt die neuen Inhalte.)
Wenn Sie den ersten Ansatz (mit dem >>
) verwenden und feststellen, dass die von Ihnen hinzugefügte Zeile in die vorherige Zeile übergeht, z.
ein paar Sachen hier Einige weitere Dinge hier setzen Completion-Ignore-Case auf On
Dann müssen Sie die Datei bearbeiten, um sie zu reparieren. Dies würde passieren, wenn die letzte Zeile der bereits vorhandenen Datei mit einem Textzeichen statt einem "Newline" -Zeichen (dh einer Zeilenende-Markierung) endet. Dies ist für .TXT
Dateien unter Windows üblich, unter * nix jedoch selten.
Wenn Sie im Voraus feststellen, dass Ihre .inputrc
Datei bereits Inhalte enthält, die nicht mit einem Zeilenumbruch enden, sollten Sie echo
stattdessen die folgende Anweisung verwenden:
echo -e "\nset completion-ignore-case On" >> ~/.inputrc
Das \n
Zeichen vor der Phrase wird als Newline-Zeichen interpretiert, sodass nach dem vorherigen Inhalt und vor den neuen Elementen, die Sie hinzufügen möchten, eine Newline eingefügt wird.
Oder etwas mehr Tippen, aber viel besser lesbar,
echo "" >> ~/.inputrc
echo "set completion-ignore-case On" >> ~/.inputrc
oder
(echo ""; echo "set completion-ignore-case On") >> ~/.inputrc
die das Gleiche tun; Geben Sie also das fehlende Zeilenumbruchzeichen für den vorhandenen Text ein und fügen Sie anschließend den set completion-…
Befehl hinzu.
touch
Befehl hier zu verwenden.echo "…" >> ~/.inputrc
ist ganz genug.echo "…" >> ~/.inputrc
erstellt die Datei, wenn sie nicht existiert. Mit Ausnahme von pathologischen Fällen, wie~
sie nicht existieren, haben Sie keine Schreibberechtigung in~
oder das Dateisystem ist voll. und in solchen Fällentouch
nicht helfen.touch
ist hier völlig überflüssig.Alles was Sie tun müssen ist:
echo
gibt den Text einfach über den normalen Ausgabekanal (stdout) wiederDas
>>
schreibt die stdout-Ausgabe vom linken Befehl in die rechte Datei, die in Ihrem Fall ist~/.inputrc
~/
ist das gleiche wie/home/your_username/
quelle