タグ付けされた質問 「bash」

Bash(Bourne-Again SHell)は、Ubuntuのコマンドラインインターフェースでデフォルトで使用されるシェルです。

2
フォルダー比較
サブフォルダー構造が似ている2つのフォルダーがあります。比較したいと思います。例えば: A ├── child-1 ├── child-2 ├── child-3 ├── child-4 ├── child-5 そして B ├── child-1-some-text ├── child-2-more-text ├── child-3-nothing ├── child-6-random-text ├── child-7-more-random-text のサブフォルダーのAプレフィックスであるすべてのサブフォルダーBを一覧表示し、対応するサブフォルダーBも同様に一覧表示します。期待される出力は child-1 -- child-1-some-text child-2 -- child-2-more-text child-3 -- child-3-nothing 2番目の要件:複数のがで一致する場合B、エラー/警告が表示されます。 私の解決策: cd A for f in `ls -d */`; do cd B; new_dirs=(`ls -1d $f*`); …
10 bash  directory 

5
スクリプトの実行中にのみアイコンを表示する方法はありますか?
私はスクリプト作成に非常に慣れていません。これが私が書いた単純なスクリプト(これは機能します)で、5分経過したときに画像を表示します。 sleep 300 && firefox file:///home/tasks/fiveminutes.jpg これが私の質問です。タイマーを開始したかどうかを思い出せないことがあります。5分間(タイマーを開始してから終了するまで)表示されるテキストまたはアイコン表示(タスクバーにあるのが理想的ですが、どこにでもすばらしいでしょう)を追加する方法はありますか? 提案をありがとうございました。
10 bash  scripts 

2
ファイルの名前を変更するときにスペースを置き換えない
私はこのようにファイルの名前を変更しようとしています: for file in *; do mv -i "$file" "$(echo "$file" | sed -e 's/[^A-Za-z0-9._-]/_/g')"; done ただし、sedコマンドはすべてのスペースをに置き換えます_。 sedコマンドを編集して、指定した文字と共にスペースを含めるにはどうすればよいですか?使ってみましたがうまくいき\sません... EDIT: たとえば、次のファイルtrip: hill、名前を変更する必要がありますtrip_ hillが、作るそれ以上のコマンドtrip__hill。

2
1行のコマンドでファイル名を変更する
このディレクトリがあり、ファイルの名前を変更したい: ===> ls -1 Der-vierte-Weise/ 10 - 10 - Erkenntniss.ogg 1 - 01 - Hoffnung.ogg 11 - 11 - Wahrheit.ogg 12 - 12 - Dankbarkeit.ogg 13 - 13 - Kredits.ogg 2 - 02 - Familie.ogg 3 - 03 - Demut.ogg 4 - 04 - Freude.ogg 5 - 05 - Schoenheit.ogg …

1
再生リストの一部であるバッチの最初から最後までYouTubeビデオをダウンロードする
YouTube動画はスタンドアロンで視聴することも、プレイリストの一部にすることもできます。 例: https : //www.youtube.com/watch?v=vbsNiOkm0BU および https://www.youtube.com/watch?v=vbsNiOkm0BU&index=141&list=UUmM7KPLEthAXiPVAgBF6rhA パーツに注目してくださいvbsNiOkm0BU。 問題は、チャンネル/再生リストのすべての動画でこの部分を取得することです。 動機は、このチャネル(約3600)のすべてのビデオをダウンロードすることです。しかし、私はyoutube-dl一度にすべてをダウンロードすることに成功していません。 例として、100単位でダウンロードしたいと思います。 この質問をさらに進めることができる場合、プレイリストの特定のインデックスのみをダウンロードするbashスクリプトを記述できますか? 上記のリンクが表示された場合: https : //www.youtube.com/watch?v=vbsNiOkm0BU&index=141&list= UUmM7KPLEthAXiPVAgBF6rhAパーツに注意してください&index=141。 今、このようなことをすると: for i in {100..200} do youtube-dl https://www.youtube.com/watch?v=vbsNiOkm0BU&index=${i}&list=UUmM7KPLEthAXiPVAgBF6rhA done パーツに注目してください&index=${i}。 が原因で、同じ動画が何度もダウンロードされていvbsNiOkm0BUます。 これに関するどんな助けでも大歓迎です。ありがとうございました。

3
使ってもいいですか '!!' エイリアスまたはスクリプトで?
ターミナル!!では、以前のコマンドを参照するのに使用できます。これをエイリアスで使用することは可能ですか?試してみましたが、二重感嘆符が文字通りに解釈されてしまいます。 私が可能にしたいのは: コマンドを入力します 手順1で入力したものを含むエイリアスを入力します 許容できるスクリプトを使用したソリューションがある場合。

1
アスタリスク付きのタブ補完なし*
コマンドラインにアスタリスクがあると、gnome-terminalのコマンドラインからタブ補完を実行できません。デフォルトのシェルはbashで、gnome-terminalを使用しています。例えば、 これは、ディレクトリに1つのファイルをコピーするために働く上でタブ補完を使用して~/files/ディレクトリ: cp ~/file1 ~/files/ ただし、複数のファイルをディレクトリにコピーする場合、ディレクトリでタブ補完を使用してもこれは機能しません(手動で入力するか貼り付ける必要があります~/files/)。 cp ~/file* ~/files/ (ファイルが存在すると仮定するとfile1、file2、file3&file4) そして、これはディレクトリを完全にタブで完了します(そして私が正規表現が機能することを期待するように機能し、それらのファイルすべてをにコピーします~/files/): cp ~/file?* ~/files/ だから私は回避策を持っています。しかし、私は以前にこれを使用する必要がなくてこれを機能させたことがあることを知っており、?どのようにまたはいつそれを失ったのか正確にはわかりません。ヘビーコマンドラインユーザーとして私はそれと一緒に住んでいますが、最近は比較的迷惑です。 EDIT1 +: の出力 $ compopt cp compopt +o bashdefault +o default +o dirnames +o filenames +o nospace +o plusdirs cp 出力$ set -x後、$ cp ~/file* ~/file<tab> + (( COMP_CWORD += 1 )) + COMP_WORDS=(cp -i …

4
ファイルの読み取りと書き込み:teeコマンド
次のようなコマンドがあることはよく知られています。 cat filename | some_sed_command >filename コマンドの前に実行される出力リダイレクトとして、ファイルfilenameを消去し、filenameを切り捨てます。 次の方法で問題を解決できます: cat file | some_sed_command | tee file >/dev/null しかし、これがどのような場合でも機能するかどうかはわかりません。ファイル(およびsedコマンドの結果)が非常に大きい場合はどうなりますか?まだ読み込まれていないコンテンツをオペレーティングシステムが上書きしないようにするにはどうすればよいですか?どのような場合でも機能するスポンジコマンドもあるようです。ティーより「安全」ですか。
10 command-line  bash  tee 

3
隠しファイルの表示を定期的にオフにするにはどうすればよいですか?
そのため、一部のファイルやフォルダーを未熟な人の目から隠すために、名前の先頭にドットを付けて名前を変更しました。動作し、ファイルは非表示です。熟練していないせんさく好きな人には見えません。また、Nautilusを使用して、キーの組み合わせを使用して「非表示ファイルの表示」のオンとオフを切り替えますCtrl- H。いいね。しかし、この機能をオンまたはオフのままにするかどうかはわかりません。 たとえば、10分ごとに自動的に開始し、「非表示ファイルの表示」機能をオフにするbashスクリプトを記述したいと思います。だから私はせんさく好きな目が隠しファイルを見ることは決してないだろうと確信しています。今問題はそれです: 使用するbash命令があれば、わかりません。私はbashスクリプトがほぼすべてを実行できると確信しているので、助けてください! xx秒または分ごとにbashスクリプトを自動的に開始する方法がわかりません。 どうすればいいのですか?
10 bash  scripts  files  schedule 


1
完了候補から特定の結果を選択します
特定のディレクトリに3つのファイルがあるとします。 abc.txt, aww.txt, ant.txt 私が行う場合:(cat aそしてタブを押してオプションを表示する)ターミナルは3つのファイル名を表示します:abc.txt, aww.txt, ant.txt 端末が表示した結果のインデックス番号を指定して、入力するのではなくn番目の結果を選択する方法はありますか? 次のようなもの:cat a22番目のファイル(aww.txt)を取得するには?

3
sedで複数行を挿入する方法
これを追加したい #this ##is my text 行の前 the specific line 私はこれを試しました sed -i '/the specific line/i \ #this ##is my text ' text.txt ただし、「テキスト」のみが追加されます。 私はまたして様々な組み合わせを試してみました\し、" "何も働きました。
10 bash  sed 

5
シェルスクリプトを使用してgnuplotでコマンドを実行する方法
私がやりたいことは、まずプログラムを起動し、次に一連のコマンドを実行して終了するように指示するスクリプトを作成することです。例を挙げましょう。 このスクリプトを作成しましたがmyscript.sh、思いどおりに動作しません。gnuplotを実行して終了するのを待ってから、他のコマンドを実行するだけです。明らかにエラーが発生します。 #!/bin/bash gnuplot plot sin(x) pause -1 quit 私がやろうとしていることは明らかだと思います。そうでない場合は、コメントでお知らせください。

2
シェルスクリプトでの大文字と小文字の区別
次のBashスクリプトについて考えてみましょう。 #!/bin/bash echo Enter any character read char case $char in [a-z]) echo Lower case letter ;; [A-Z]) echo Upper case letter ;; [0-9]) echo Number ;; ?) echo Special char ;; *) echo You entered more than one character ;; esac 「a」を入力すると、出力は小文字で、「A」と同じです...これを克服するにはどうすればよいですか?
10 bash  scripts 

2
n行印刷後の末尾-f
以下があります。 ファイルにログを書き込むJavaプロセス Javaプロセスを開始するシェルスクリプト。 Javaプロセスの開始後にログファイルを読み取って、正しく開始することを確認する必要があります。 私は試してみましたtail -fが、永久に追加されたままです。tailn行印刷後に停止する必要があります。以前の-n行のオプションのような方法はありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.