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

Bashは、GNUプロジェクトのUnixライクなオペレーティングシステム用の無料のシェルです。


3
wgetでダウンロードする数値の範囲をループする
次のことを行うbashスクリプトを作成するにはどうすればよいですか。 URL = "example.com/imageID=" while (1..100) wget URL + $i #it will wget example.com/imageID=1, then 2, then 3, etc done そのため、実行するループの数、ループからの数で終了するURLがあります。私wgetはこれらすべてをする必要があります。

1
curlが200以外のHTTPステータスを取得したときにbashスクリプトを終了する
いくつかのカールリクエストを実行するbashスクリプトの設定があります for currency in EUR INR JPY do curl -i --data '{"currency": "'$currency'"}' -H "Accept: application/json" -H "Content-Type: application/json" http://0.0.0.0:8080/price && echo done curl応答の1つがhttpステータス!= 200で戻ってきた場合にスクリプトを終了させる方法はありますか? また、標準のcurl出力を保持したいと考えています。たとえば、httpステータスコードのみを出力するソリューションは必要ありません。 乾杯

3
変数に保存されているコマンドを実行する
変数にコマンドを保存しています。変数$iに値があるとします。 cat -nT index.php |grep 'someregex' 上記の変数を入力$iして実行しようとすると、シェルが変数全体を1つのコマンドとして実行しようとするため、失敗します。私もバッククォートを使っeval($i)て入れてみ$iました。 $iコマンドのようにシェルを実行するにはどうすればよいですか?そしてなぜそれは同じように機能しないのですか? $i='echo hi'; $i それは私が一重引用符で一種のハックしなければならなかったからですか?(ネストできないため)現在のところ、私の解決策は echo $i > /foo; . /foo ただし、このためだけにファイルを作成するのではなく、後で削除するだけです。 「一重引用符でハッキングしたのは、私がしたことです。 $i='cat index.php | grep -P '"'"'MYREGEXHERE'"'"
11 linux  bash  shell 

3
中断せずにフォアグラウンドプロセスをバックグラウンドにすることは可能ですか(control + z)?
TCPおよびUDPパケットを受信するため、一時停止できないアプリケーションを実行しています。私は最初、同じアプリケーションの3つのプロセスを、異なる引数を使用して、バックグラウンドモードでを使用して実行しました&。私だけがしたとき$fg、3つのプロセスすべてがフォアグラウンドになりました。今、私はそれらを再びバックグラウンドに送りたいのですが、中断はしません。どうやってやるの?
11 linux  bash  unix 

8
別のディレクトリからスクリプトを実行する
たいていの場合、実行したいスクリプトが現在の作業ディレクトリにないため、そのままにしたくありません。 別のディレクトリからスクリプト(BASH、Perlなど)を実行することは良い習慣ですか?彼らは通常、適切に実行するために必要なすべてのものを見つけますか? もしそうなら、「遠い」スクリプトを実行する最良の方法は何ですか?それは...ですか . /path/to/script または sh /path/to/script そしてsudo、そのような場合の使い方は?たとえば、これは機能しません。 sudo . /path/to/script

1
.bashrcが別のファイルからエイリアスをロードする
.bashrcファイルがあります。これをセットアップして、.aliasesファイルからエイリアスを読み取り、セットアップします。 現在私は持っています: # User specific aliases and functions while read alias_line do echo `alias ${alias_line}` done < .aliases しかし、ログイン時に私は得ます: -bash:エイリアス:-fu:見つかりません-bash:エイリアス:$ USER ":見つかりません -bash:エイリアス:-lart ":見つかりません .aliasesファイルは次のようになります。 psu = "ps -fu $ USER" ll = "ls -lart" pico = 'nano'
11 bash  alias  bashrc 

2
bashでタスクをバックグラウンドに配置する
Bashでバックグラウンドジョブを開始できることは承知していますfoo &。ただし、フォアグラウンドジョブをバックグラウンドに配置するために知っている最善の方法は、Ctrl+ zを実行して一時停止してbg 1から、バックグラウンドで再開することです。 より速い方法はありますか?私が知らないいくつかのCtrl+ Somethingキーの組み合わせ?
11 bash 

1
ログインシェルにssh + sudo + su
sudo su特別な目的のユーザーとしてログインした残りのセッションを費やすためにのみ使用するマシンを定期的にsshで使用しています。一般的なワークフローは次のとおりです。 mymachine:~ me$ ssh me@othermachine othermachine:~ me$ sudo su - specialuser # note: no password needed othermachine:~ specialuser$ # do stuff これをエイリアス化できる1行にまとめたいので、sudo su - specialuserボイラープレートを入力しなくても、各マシンにエイリアスを設定して、1つのコマンドで必要な場所に到達できます。私は多分設定することができme@othermachineへsudo suのログイン時に、私はのように動作する柔軟性維持したいのですがme、私はする必要がある場合を。 (注:私はothermachineそれを設定したり、その設定方法を制御したりすることはできません。これは、私が採用されたときに採用した確立されたワークフローです。) 私の最初の考えはちょうどだった ssh me@othermachine "sudo su - specialuser" この種の作品ですが、プロンプトが表示されず、^C強制終了してログアウトします。他にもさまざまなことが間違っていると思います。 フルログインシェルでリモートリモートsshコマンドを読んだ後、次のようなエキゾチックなものをいくつか試しました ssh me@othermachine 'bash -l -c "sudo su - specialuser"' そして ssh me@othermachine 'bash …
11 bash  ssh  sudo 

7
bashシェルスクリプトでコマンドをエコーするが、実行しない方法は?
コマンドをエコーでシェルスクリプトを実行するための方法があるが、実際にそれらを実行するW / Oは? 名前が変数に格納されているファイルを削除するスクリプトがあるとします。 #!/bin/bash set -v FN="filename" rm -f ${FN} 追加するset -vと、実行前に次のコマンドがエコーされます。 $ ./scr.sh FN="filename" rm -f ${FN} ここで、実際にファイルを削除しないこのスクリプトのフローを確認します。IOW、外部環境やファイルシステムへの影響を防ぎたい。これは可能ですか? すべてのコマンドを1つのechoコマンドでラップすることはできますが、長いスクリプトを使用するには面倒です。

2
特定のディレクトリ内のファイルが変更された場合にのみ、git pre-commitフックを実行します
git pre-commitフック用のbashスクリプトを作成しようとしています。コミットが行われるときはいつでも、特定のディレクトリ内のファイルがステージングされたファイルの一部であるかどうかを確認したい場合は、コマンドを実行します(Gruntタスク)。これまでのところ、特定のファイルが変更された場合にのみ実行されることを除いて、すべてが機能しています。私はこれを動作させるようにしています: SRC_PATTERN="site/assets/js/" if [ grep --quiet $SRC_PATTERN `git diff --cached --name-only` ] then echo "none" exit 0 fi 残念ながら、これはエラーになります。
11 bash  git 



3
Guake-Windows 10 + Bash
取得する方法のいずれかありますGuakeのWindows 10上で動作するようにする、または新規勝つ10バッシュを開催します「コンソールホスト」ダウン代替降下は?
11 windows-10  bash 


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