Unix & Linux

Linux、FreeBSDおよび他のUn * xのようなオペレーティングシステムのユーザーのためのQ&A

4
コマンドラインからWi-Fiインターフェイスを起動する方法は?
ラップトップでWi-Fiカードを適切に起動する方法がわかりません。電源を入れて発行すると $ sudo iwconfig wlan0 txpower auto $ sudo iwlist wlan0 scan wlan0 Interface doesn't support scanning : Network is down ネットワークがダウンしていることを報告します。起動しようとしても失敗します: $ sudo ifup wlan0 wlan0 no private ioctls. Failed to bring up wlan0. どうやら基本的な低レベルのiw...コマンドが欠落しているようです。 dhclientインターフェイスで発行する場合: $ sudo dhclient -v wlan0 Internet Systems Consortium DHCP Client 4.2.2 Copyright 2004-2011 …

7
より多くのスレッドを使用すると、より少ないスレッドを使用するよりも遅くなる理由
8つのスレッドを使用してプログラムXを実行しようとしましたが、n分で終了しました。50スレッドを 使用して同じプログラムを実行しようとしましたが、n * 10分で終了しました。 なぜこれが発生し、使用できるスレッドの最適数を取得するにはどうすればよいですか?

7
テキストに特定の単語を含むファイルを一覧表示する
特定の単語を含むファイルを再帰的かつ一意にリストしたいと思います。 例:単語 'check'を確認する、私は通常grepです $ grep check * -R しかし、この言葉の多くの出現があるので、私は多くの出力を得ます。そのため、指定された検索語を含むファイル名をリストするだけです。私はここでいくつかのトリックを推測しfind、xargsここで十分でしょうが、確かではありません。 何か案は?
30 find  grep  file-search 

5
FIFO、パイプ、UnixドメインソケットはLinuxカーネルでも同じですか?
FIFOは名前付きパイプだと聞きました。そして、それらはまったく同じセマンティクスを持っています。一方、Unixドメインソケットはパイプに非常に似ていると思います(使用したことはありませんが)。だから、彼らはすべてLinuxカーネルの同じ実装を参照しているのだろうか。何か案が?


1
スクリプトでcronがsudoを実行するのに静かに失敗するのはなぜですか?
を使用していくつかのコマンドを呼び出す非特権ユーザーのcrontabからスクリプトを実行していますsudo。そうでないことを除いて。スクリプトは正常に実行されますが、sudoされたコマンドは黙って失敗します。 スクリプトは、問題のユーザーとしてシェルから完全に実行されます。 sudoはパスワードを必要としません。問題のユーザーにはで(root) NOPASSWD: ALLアクセスが許可されてい/etc/sudoersます。 Cronはスクリプトを実行および実行しています。シンプルdate > /tmp/logを追加すると、適切なタイミングで出力が生成されます。 権限の問題ではありません。繰り返しますが、スクリプトは実行されますが、sudoされたコマンドではありません。 パスの問題ではありません。実行env中のスクリプト内から実行$PATHすると、sudoへのパスを含む正しい変数が表示されます。完全なパスを使用して実行しても役に立ちません。実行中のコマンドにはフルパス名が与えられています。 STDERRを含むsudoコマンドの出力をキャプチャしようとしても、有用なものは何も表示されません。sudo echo test 2>&1 > /tmp/logスクリプトに追加すると、空のログが生成されます。 sudoバイナリ自体は正常に実行され、スクリプト内のcronから実行された場合でもアクセス許可があることを認識します。sudo -l > /tmp/logスクリプトに追加すると、出力が生成されます。 ユーザーec2-userは、このホストで次のコマンドを実行できます: (root)NOPASSWD:ALL を使用してコマンドの終了コードを調べると、$?エラーが返されています(終了コード:)1が、エラーは発生していないようです。/usr/bin/sudo /bin/echo test同じエラーコードを返すような単純なコマンド。 他に何が起こっているのでしょうか? これは、最新のAmazon Linux AMIを実行する最近作成された仮想マシンです。crontabはユーザーに属しec2-user、sudoersファイルが配布のデフォルトです。
30 sudo  cron 

4
なぜ-eが括弧()の後にORリスト||が付いたサブシェル内では機能しないのですか?
最近、次のようなスクリプトに遭遇しました。 ( set -e ; do-stuff; do-more-stuff; ) || echo failed これは私には問題ありませんが、機能しません!set -eあなたが追加した場合、適用されません||。それがなければ、うまくいきます: $ ( set -e; false; echo passed; ); echo $? 1 ただし、を追加する||と、set -e無視されます: $ ( set -e; false; echo passed; ) || echo failed passed 実際の独立したシェルを使用すると、期待どおりに機能します。 $ sh -c 'set -e; false; echo passed;' || echo failed …


6
サブシェルからシェルスクリプトを終了する
このスニペットを検討してください。 stop () { echo "${1}" 1>&2 exit 1 } func () { if false; then echo "foo" else stop "something went wrong" fi } 通常、funcが呼び出されると、スクリプトが終了します。これは意図した動作です。ただし、次のようなサブシェルで実行される場合 result=`func` スクリプトは終了しません。つまり、呼び出しコードは毎回関数の終了ステータスをチェックする必要があります。これを回避する方法はありますか?これは何のset -eためですか?

2
ファイルタイプを設定するためにvimが処理するファイルにコメントを入れる方法はありますか?
たとえば、vimによって名前gitconfig(先頭なし.)のファイルをとして認識したい場合filetype=gitconfig、ファイル内でコメントまたは同様のものでこれを示す方法はありますか?注、これはシステム全体で機能するため、vimのスタートアップファイルを変更することは推奨されません。
30 vim 

6
コマンド置換:スペースではなく改行で分割
私はこの問題をいくつかの方法で解決できることを知っていますが、bashビルトインのみを使用してそれを実行する方法があるかどうか、そしてそうでない場合、最も効率的な方法は何ですか? 次のような内容のファイルがあります AAA B C DDD FOO BAR つまり、複数の行があり、各行にスペースがある場合とない場合があります。次のようなコマンドを実行したい cmd AAA "B C DDD" "FOO BAR" 使用するcmd $(< file)と cmd AAA B C DDD FOO BAR そして、私が使うなら、私はcmd "$(< file)"得る cmd "AAA B C DDD FOO BAR" 各行を1つのパラメーターだけで処理するにはどうすればよいですか?

9
コマンドラインからファイルにテキストを追加する最も簡単な方法は何ですか?
時々、端末にいる間にファイルに書き込みたいと思うことがあります。これらのメモはすべて同じファイルに入れて、次々にリストしたいだけです。また、それぞれに日付/時刻タグが必要です。 毎回ファイルを開かずにこれを行うことは可能ですか?ターミナルに入力して、コマンドまたはスクリプトで毎回ファイルに追加できますか? GNU BASHを使用しています。

6
トラップ、ERR、およびエラー行のエコー
トラップを使用してすべてのエラーで関数を呼び出すエラー報告を作成しようとしています: Trap "_func" ERR ERR信号の送信元の行を取得することはできますか?シェルはbashです。 それを行うと、使用されたコマンドを読んで報告し、いくつかのアクションを記録/実行できます。 それとも私はこれですべて間違っていますか? 私は以下でテストしました: #!/bin/bash trap "ECHO $LINENO" ERR echo hello | grep "asdf" そして$LINENO2を返しています。動作していません。

6
Linuxでのヘッドフォンの接続/切断の検出
ヘッドフォンがシステムに接続または切断されたときに信号を検出しようとしています。これを行う最良の方法は何ですか? ドライバー付きの特別なボードがある場合、それが私の好ましい方法です。
30 linux  audio  hardware 


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