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

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

2
ユーザー入力から大文字と小文字を区別しない
ユーザーの入力を受け取るためのスクリプトを書きます。スクリプトは大文字と小文字を区別しないでください。 このスクリプトを考えてください foo.sh: if [ $1 == "string" ]; then echo true else echo false fi の入力が foo.sh です STRING または StRiNg 結果は偽になります。 どのように私はのケースを無視することができます if 調子?
1 linux  bash  unix  terminal 

1
ファイルを使用しているが現在使用していないプロセスを見つける方法
バックグラウンド 私、そしてAppleのサポートフォーラムによると他の多くの人々も私のMacのオーディオ設定に問題を抱えている。コンピュータのスリープまたは電源を切るたびに、オーディオは内蔵スピーカーにリセットされ、システムはオーディオジャックに接続されているものを認識しません。問題が解決しない場合、NVRAMまたはSMCをリセットすると、マシンがスリープするか電源が切れるまで問題が解決します。 アイデア 次のファイルを削除したことが判明しました。 /Library/Preferences/Audio/com.apple.audio.DeviceSettings.plist /Library/Preferences/Audio/com.apple.audio.SystemSettings.plist そして再起動は一時的な修正も行いますが、やはり再起動が必要です。私の考えは、bashスクリプトを書くことです。 rm 両方のファイルを処理してから、それらを使用しているプロセスを強制終了します。しかし問題は、どのプロセスがそれらをロードしているのかを見つけることです。残念ながら lsof 動作しません、プロセスがそれらを絶えず使用しないので、それらはプロセスが開始するときロードされ、それはそれです。 質問 プロセスがファイルへの絶え間ないアクセスを維持しておらず、ログイン前にファイルをロードしている可能性があることを考えると、どのプロセスがファイルをリブートするたびにロードしているのかをどのように確認できますか あなたがあなたのMac上でこの問題を以前に経験したことがあり、それをどのように修正するかを知っているならば、ボーナスポイント。
1 macos  mac  bash  audio  process 

2
画像にSTDOUTをパイプ?
最近、 "git show< hash>"のような端末コマンドを実行したいと思いましたそして出力を画像、好ましくはPNGに保存する。 私はそれをかなりググって、特にimportコマンドで、いくつかのきちんとしたトリックを見つけました、しかしSTDOUTを確実に捕えて、それをイメージとして保存することは何もしませんでした。 だから、私はここで脳の信頼を頼むと思いました。 Linux用のテスト済みで検証済みのソリューションがありますか?


2
別のTTYでダイアログ/ホイップテイルスクリプトを実行することは可能ですか?
私にとっては、この問題の起源は、コマンドラインでwhiptailコマンドを実行できることです。 %pre Centosベースのカスタムディストリビューションをインストールするときのキックスタートファイルからのスクリプト。ただし、Anacondaで観察された動作は、あらゆるLinuxシステムの仮想端末を介して簡単に再現できます。 Anacondaでキックスタートとしてwhiptailコマンドを実行する %pre スクリプト新しいTTYでTTYを切り替えてコマンドを実行する必要があります。これを行う方法に関する一般的な提案は次のとおりです。 %pre exec </dev/tty6 >/dev/tty6 2>/dev/tty6 chvt 6 # then execute your command, for example: whiptail --inputbox "Enter some text..." 10 30 # switch back to the original TTY chvt1 exec </dev/tty1 >/dev/tty1 2>/dev/tty1 %end この方法を使用すると、ホイップテイルダイアログボックスは新しいTTYに正しくレンダリングされますが、ダイアログとの対話はできません。 tabテキスト入力、 "Ok"、および "Cancel"要素を切り替えるのではなく、実際にはテキスト入力ボックスにタブを挿入します。同様に、矢印キーを使用すると、ダイアログにエスケープシーケンスが書き込まれます。 この動作は、python snack(whiptail - libnewtと同じライブラリを使用)とdialogを使用しているときにも見られます。 もちろん、whiptailを使用するのではなく、対話型シェルスクリプトを使用することもできますが、この動作を実現するための唯一の要件はそれであると考えていたので入力ストリームと出力ストリームを正しくリダイレ​​クトするため。 TL、DR …

1
ncatで使用するためにスクリプトに変数としてsslキーを格納する方法?
ncatリスナーを起動するためのラッパースクリプトを作成しようとしています。証明書とキーをファイルに出力する必要はありませんが、スクリプト内の変数として保存して、次のように呼び出します。 #!/bin/bash crt="( ---BEGIN CERT ---- MIICjdkfj4544757jkdfjdkfjsfsdkljf4alwjkqe3r3lkfd dfjsdkfjdkfjdkfjdf34534235jeklgjeg94gjriogjgojdgkdo7HH 87HSKRNSSFSDFJDKDJFKJDSF/7387dfddffdfd8jhrg8hgs....etc") ncat --listen --ssl --ssl-cert "$crt" --ssl-key "$key" 127.0.0.1 4444 しかし、ncat(またはbash)は、キー自体ではなく、キーを超長ファイル名として解釈し続けます。基本的に、キーと証明書を変数として格納し、実際のファイルから読み取っているかのようにncatに読み取らせます。これは可能ですか?私はいくつかの方法を試してみましたが、まだ運はありませんでした。

3
bashのzipアーカイブから大量のファイルを抽出するためのより良い方法
私は、bashを使ってそのアーカイブから抽出する必要がある、たくさんのファイルを含むzipアーカイブとファイルのリスト(〜10000アイテム)を持つ平文ファイルを持っています。 その操作を実行するための最良の方法は何ですか? 明らかな方法はファイルの各行に対してunzipを実行することですが、とても遅いように見えます。
1 bash  zip 

4
Emacsのトランプモード - ファイル名の自動補完が機能しない
私はEmacsでトランプモードを使ってsshでファイルを編集しています。しかし問題は、リモートシェルではlsに "ls --color"というエイリアスを付けたことです。 Trampは自動補完のためにlsを使います、そしてそれは色分けされたls出力を解析することができません。 に記載されている解決策 https://www.gnu.org/software/tramp/#Frequently-Asked-Questions 別名を削除して、lsからの出力の色付けを無効にします。それが私にとって大きな特徴であるので、私はそれをしたくありません。 trampがlsコマンドを発行する方法を再定義して、シェル構成を保持したままtrampでファイル名補完を使用できるようにする方法はありますか。 編集1 :問題は他の何かであるようです。 @chepnerで示唆されているようにエイリアスを 'ls --color = auto'に変更してから、単に 'ls'に変更してみました。まだうまくいきません。さらに問題を解決するにはどうすればよいですか。
1 linux  bash  shell  emacs  tramp 

0
Bash Shellは文字「t」を認識しません
CygwinをWindows 7 Box上で実行しています。比較的新しい(そして奇妙な)開発では、bashシェルは小文字の "t"を認識しなくなりました。例えば: 私はタイプする echo cat出力は ca。 私はタイプする more tmp.txt出力は mp.x does not exist (または、ファイルが存在しないと表示されます)。 私はタイプする echo TTT出力は TTT。 誰もがこれについて知っていますか?
1 bash  shell  cygwin 

2
Win10上のLinux用サブシステムを完全にアンインストールしますか?
私はWin10用のLinux / Bashサブシステムに少しばかげていました。 しかし、私は今のところCygwinと一緒にいることにしました。それで私はそれをアンインストールしました - あるいは私がしたと思いました。 これでCygwinをインストールして配置しました bin 最初のディレクトリ PATH。 に cmd.exe 、私がタイプするとき bash 、それはCygwin's Bashを始めます。 しかし私がするとき 勝つ + R とタイプ bash、まだプロンプトが表示されます。 Windows Subsystem for Linux has no installed distributions. …bla-bla-bla… Linux / Bashサブシステムを完全に取り除くにはどうすればいいですか?その代わりにCygwinのBashを PATH?

2
Windowsのcmdでdatetimeを印刷する
Linuxでは date +"%Y%m%d%H%M%S" 日付と時刻のラベルを印刷します。 Windowsではどうやって同じようにできますか? 見つけた date /t 戻る 25/02/2016。しかし、私はそれを次のようにフォーマットしてもらいたいのです。 20160225155958。
1 linux  windows  bash 

1
ターミナルでコマンドを実行できません
新しいウィンドウを開いたときに、ターミナルに自分のユーザー名が表示されません。また、コマンドも実行できません。これは私のウィンドウにあるものです: ... Last login: Sat Oct 5 22:27:07 on ttys000 ls -1 [Process completed] ... 走れない pwd または cd または ls -1 等: これが私の起動設定です。 助言がありますか?
1 macos  bash  terminal 

2
Oracle Linuxでapt-getを動作させる方法は?
を使用して、私のOracle LinuxにWineをインストールしようとしました。 apt-get install wineしかし、うまくいきませんでした。 私は普通のユーザーとしてこれを試してみましたが、それはこのエラーを示していました: bash:apt-get:コマンドが見つかりません。 私もやってみました root と sudo apt-get install wine。それも、エラーを投げます: ksaiがsudoersファイルにありません。この事件は報告されるでしょう。 そのユーザーをに追加しました sudoers 使う visudo 次のように: ksai ALL=(ALL) ALL** 役に立ちませんでした。どのようにインストールを機能させるのですか?
1 linux  bash  wine 

2
SLURMは、開始要求よりも多くのCPUを使用するジョブを許可します
私がSLURMで直面している問題は以下のようにまとめることができます。 bashスクリプトを考えましょう test.sh これは8個のCPUを要求しますが、実際には10個のCPUを使用してジョブを開始します。 #!/bin/sh #SBATCH --ntasks=8 stress -c 10 32個のCPUを搭載したサーバーで、このスクリプトを5回起動すると sbatch test.sh、そのうちの4つはすぐに実行を開始し、最後のものは、によって示されているように、保留中として表示されます squeue コマンド: JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 5 main test.sh jack PD 0:00 1 (Resources) 1 main test.sh jack R 0:08 1 server 2 main test.sh jack R 0:08 1 server 3 main test.sh …

2
スワップをテストして正常に終了するスクリプト
私はスワップをテストし、スワップがこのスクリプトの一部として見つかった場合は正常に終了するスクリプトを探しています。 #!/bin/bash # This script formats and mounts /dev/sdc { if [ ! -f /scripts/alert ]; then echo "File not found!" exit 0 fi } mkswap /dev/sdc && swapon /dev/sdc #END
1 linux  bash 

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