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

シェルは、Unixライクなオペレーティングシステムで最も一般的に使用されるコマンドラインインタープリターの用語ですが、GUIベースのオペレーティングシステムとより詳細にやり取りするためにも使用されます。ユーザーがテキストインターフェイスからプログラムを実行できるようにするだけでなく、変数、置換、出力リダイレクト、ワイルドカードなどの基本的なプログラミング機能を頻繁に提供します。

1
「ログイン」と「インタラクティブ」bashシェルの違いは何ですか
「ログイン」と「インタラクティブ」bashシェルの違いは何ですか?以下にウィキペディアを引用しましたが、誰でもより良い答えを出すことができますか? 編集:これはコミュニティWikiであるため、終了するために投票するのではなく、どの状況でどのタイプの$ SHELLが必要かを示す例を提供できます。 起動スクリプト Bashが起動すると、さまざまな異なるスクリプトでコマンドを実行します。 Bashが対話型ログインシェルとして呼び出されると、最初に/ etc / profileファイルが存在する場合、そのファイルからコマンドを読み取り、実行します。そのファイルを読み取った後、〜/ .bash_profile、〜/ .bash_login、および〜/ .profileをこの順序で検索し、最初に存在する読み取り可能なコマンドからコマンドを読み取り、実行します。 ログインシェルが終了すると、Bashは〜/ .bash_logoutファイルが存在する場合、ファイルからコマンドを読み取り、実行します。 ログインシェルではないインタラクティブシェルが起動すると、Bashは〜/ .bashrcからコマンドを読み取り、実行します(そのファイルが存在する場合)。これは、-norcオプションを使用して禁止できます。--rcfileファイルオプションは、Bashに〜/ .bashrcではなくfileからコマンドを強制的に読み取らせて実行させます。 ウィキペディア




8
別のユーザーとしてシェルスクリプトを実行する
別のユーザーとしてシェルスクリプトを実行する良い方法は何ですか。私はDebianエッチを使用していますが、どのユーザーになりすますかを知っています。 手動で行っていた場合、次のようにします。 su postgres ./backup_db.sh /tmp/test exit プロセスを自動化するため、backup_db.shをpostgresとして実行する方法が必要です(環境を継承するなど) ありがとう!

23
シェルスクリプトでパブリックIPアドレスを見つける
ifconfigまたはhostname -iコマンドを使用してIPアドレスを見つけることができます。 しかし、パブリックIPを見つけるにはどうすればよいですか? (私は静的なパブリックIPを持っていますが、unixコマンドを使用してそれを見つけたいです)
39 unix  shell 

5
Cron:メールでのみエラーが発生しますか?
最終的に、シェルスクリプトを使用してデータの現実的なバックアップスケジュールを設定しました。これは、短い間隔でcronによって処理されます。残念ながら、問題が発生したときだけでなく、CRONが実行されるたびに空のメールを受け取り続けます。 何か問題が発生した場合にのみCRONに電子メールを送信させることは可能ですか?私は、TAR意図したとおりに実行していないのですか? 現時点では、crontabのセットアップ方法は次のとおりです。 0 */2 * * * /bin/backup.sh 2>&1 | mail -s "Backup status" email@example.com どうもありがとう!
38 bash  shell  cron  schedule 

7
PEMファイルを分割する方法
注:すでに答えを見つけたので、これは実際には質問ではありませんが、ここでは簡単に見つけられなかったので、他の人に役立つように投稿します。 質問:連結されたPEMファイルをapache / mod_sslディレクティブSSLCACertificateFileによって使用されるものとして読み取る方法は? 回答(オリジナル)(ソース): cat $file|awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {print > "cert" n ".pem"}' のように末尾に空白行がある場合、空のファイルが残ることがありますopenssl pkcs7 -outform PEM -in my-chain-file -print_certs。これを防ぐには、印刷する前に行の長さを確認します。 cat $file|awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {if(length($0) > 0) print > "cert" n ".pem"}' 回答29/03/2016: @slugchewerの回答に続いてcsplit、より明確なオプションがあります: csplit -f cert- $file '/-----BEGIN CERTIFICATE-----/' '{*}'
38 shell  openssl  awk  x509 


3
#!/ bin / sh対#!/ bin / bashにより移植性が最大化
I私はシンボリックリンクを理解して何からUbuntuのLTSサーバと通常の作業/bin/shに/bin/dash。への他の多くのディストリビューション/bin/shへのシンボリックリンク/bin/bash。 それから、スクリプトが#!/bin/sh上で使用する場合、すべてのサーバーで同じように実行されない可能性があることを理解していますか? サーバー間でスクリプトの移植性を最大限にしたい場合に、スクリプトに使用するシェルに関する推奨プラクティスはありますか?
36 linux  bash  shell  sh 

6
ファイル名の単語を置き換えて複数のファイルの名前を変更する方法は?
ACDCをAC-DCに交換 たとえば、これらのファイルがあります ACDC-ロックンロールはノイズPollution.xxxではありません ACDC-Rocker.xxx ACDC-Thrill.xxxで撮影 私は彼らになりたい: AC-DC-ロックンロールはノイズPollution.xxxではありません AC-DC-Rocker.xxx AC-DC-Thrill.xxxで撮影 この操作にはsedまたはawkが使用されることを知っています。私は何もグーグルできないので、あなたの助けを求めています=)このタスクのために完全に動作するシェルコマンドを提供してもらえますか? フィードバック:OSXユーザー向けのソリューション
36 shell  files  rename  sed 



1
sudo su-postgresとsudo -u postgresの違いは何ですか?
PostgreSQLユーザーはデフォルトでUNIXソケットでピア認証を行います。UNIXユーザーはPostgreSQLユーザーと同じでなければなりません。したがって、人々は頻繁に使用するsuかsudo、postgresスーパーユーザーになります。 次のような構造を使用している人をよく見ます。 sudo su - postgres のではなく sudo -u postgres -i そして、なぜだろうか。同様に、私は見た: sudo su - postgres -c psql の代わりに sudo -u postgres psql なし大手あなたはせずに、古いプラットフォームにあった場合のバージョンはいくつかの意味になるだろう。しかし、なぜ未定のUNIXまたはLinuxで使用するのでしょうか?sudosusudosudo su
36 postgresql  shell  sudo  su 


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