it-swarm.com.de

Wie öffne ich einen Ordner mit einem Bash-Skript, auf dem Terminal ausgeführt wird?

Ich versuche, einen bestimmten Ordner in einem Skript zu öffnen:

    #!/bin/bash
    # Download youtube videos
    xterm -e /home/pst007x/Downloads/ youtube-dl https://youtu.be/-pjc1sWw6Dw

Was passiert, ist das Öffnen des Terminals, aber mir wird die Erlaubnis verweigert.

Vielleicht eine blöde Frage, aber wie führe ich ein Skript aus, um ein Terminal in einem bestimmten Ordner zu öffnen?

Ich habe die Berechtigung, auf diesen Ordner zuzugreifen.

Vielen Dank

BEARBEITEN:

Das hat funktioniert, danke:

xterm -e 'cd /home/pst007x/Downloads/ && youtube-dl https://youtu.be/-pjc1sWw6Dw'
1
pst007x

Sie müssen das -e Option von xterm und cd, um zum gewünschten Verzeichnis zu gelangen, z. cd /foo/bar/. Der schwierige Teil ist, dass der Befehl in einer nicht interaktiven Sitzung Ihrer Login-Shell ausgeführt wird. Wenn Sie also eine Shell-Sitzung offen halten möchten, heften Sie die gewünschte Shell direkt danach an, z. Öffne bash in diesem Verzeichnis:

xterm -e 'cd /foo/bar/ && bash'

Wenn Sie einen One-Shot-Befehl ausführen möchten, verwenden Sie den Befehl einfach direkt (im Zweifelsfall verwenden Sie vorzugsweise den absoluten Pfad), ohne dass eine Shell erstellt werden muss.

3
heemayl

Stellen Sie sicher, dass Ihr Skript über die Ausführungsberechtigung verfügt. Sie können die Ausführungsberechtigung mit dem folgenden Befehl erteilen.

Sudo chmod +x <yourscriptname.sh>

Mit dem folgenden Befehl können Sie in Ihrem Download-Ordner speichern.

youtube-dl -o /home/pst007x/Downloads/  https://youtu.be/-pjc1sWw6Dw
0
Ketan Patel