Unix & Linux

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

5
ttyUSBXデバイスをUSBシリアルデバイスに一致させる方法
オプションドライバはUSB IDに正しく一致し、このデバイスのドライバをロードします。例えば # lsusb Bus 001 Device 002: ID 19d2:0031 ONDA Communication S.p.A. ZTE MF636 Bus 001 Device 003: ID 12d1:14ac Huawei Technologies Co., Ltd. また、ハードウェアを管理するためのttyUSBXデバイスを作成します crw-rw---- 1 root uucp 188, 0 Jul 4 13:48 /dev/ttyUSB0 crw-rw---- 1 root uucp 188, 1 Jul 4 13:49 /dev/ttyUSB1 crw-rw---- 1 root uucp …
21 linux  usb 

2
VIの行の特定の文字にジャンプする
VIでは、あなたがそうするなら :some_number Enterキーを押すと、「some_number」で指定された行にジャンプします。1行で特定の文字にジャンプするのと同等のものはありますか? 基本的に、私は大きなcsvを持っており、パーサーを壊しているいくつかの文字があります。デバッグする必要があります。 基本的に「XXX行YYY行の予期しない文字」というエラーメッセージが表示されます。 XXXに行く方法は知っていますが、YYYに行く方法は?
21 vim 



2
プロセスが「D」状態になるのはいつですか?
「Linuxホスト名2.6.28-15-generic#49-Ubuntu SMP Tue Aug 18 18:40:08 UTC 2009 i686 GNU / Linux」を使用しています すべてのクライアントマシンはシンクライアントを使用し、作業にはラップトップを使用し、サーバーからラップトップにホームディレクトリをマウントします。 ラップトップでfirefoxを開くと、プロセスが「D」状態にあり、他のすべてのユーザーのマシンがハングアップし、lockdプロセスが「D」状態にあるため、firefoxウィンドウは開きません。 ps ajx | grep firefox 1 6187 4313 4313 ? -1 D< 1030 3:16 /usr/lib/firefox-3.5b4pre/firefox-3.5 7610 7622 7621 7610 pts/3 7621 S+ 1030 0:00 grep firefox syslogを確認した場合 7月13日10:35:56ホスト名カーネル:[222583.872059] lockd:ラップトップを監視できません 7月13日10:35:57ホスト名カーネル:[222583.872059] lockd:ラップトップを監視できません ps ajx | grep lockd …
21 linux  process  io 

3
シェルコマンドを使用してすべての行に行番号を追加するにはどうすればよいですか?
私のファイル、 PSS-A (Primary A) PSS-B (Primary B) PSS-C (Primary C) PSS-D (Primary D) PSS-E (Primary E) PSS-F (Primary F) PSS-G (Primary G) PSS-H (Primary H) PSS-I (Primary I) SPARE (SPARE) 出力ファイル、 1> PSS-A (Primary A) 2> PSS-B (Primary B) 3> PSS-C (Primary C) 4> PSS-D (Primary D) 5> PSS-E (Primary …

5
Pythonパッケージを処理するためのPip vs Package Manager
Pythonパッケージは、多くのディストリビューションのリポジトリで頻繁にホストされています。このチュートリアルを読んだ後、具体的には「これを本当にやりたいですか」というタイトルのセクションで、私はpipの使用を避け、システムリポジトリの使用を好みました。 ただし、これは一貫性のないインストール方法であるため、pipのみを使用する方が良いでしょうか?両方の場所で利用可能なパッケージのために、システムの独自のリポジトリを介してpipを使用することの利点/批判者は何ですか? 私が含めたリンクは 常に標準のDebian / NeuroDebianパッケージを常に使用する利点は、パッケージが互いに互換性があるように慎重にテストされることです。Debianパッケージは他のライブラリとの依存関係を記録するため、インストールの一部として必要なライブラリを常に取得できます。 アーチを使用します。これは、apt以外の他のパッケージ管理システムの場合ですか?

3
[-n]のように[-n]が偽ではないのはなぜですか?
私の質問は、このコードによって生成される戻り値に関するものです。 if [ -n ]; then echo "true"; else echo "false"; fi これは印刷されtrueます。 [ -z ]また、印刷物を使用した補完テストtrue: if [ -z ]; then echo "true"; else echo "false"; fi 上記のコードでは、なぜない[ -n ]テストがnullではないとして、すべてで渡されていない文字列値を想定しますか? 以下のコードが印刷されfalseます。これは、渡された文字列値がnullで長さがゼロであるため予想されます。 if [ -n "" ]; then echo "true"; else echo "false"; fi
20 bash 

6
LinuxでGNU coreutilsを置き換えるオプションはありますか?
私は自分のLinuxシステムでGNU Coreutilsの使用を中止することを考えてきましたが、正直なところ、他の多くのGNUコンポーネントとは異なり、(Linuxで)代替手段を考えることはできません。GNU coreutilsにはどのような代替手段がありますか?複数のパッケージが必要ですか?プロジェクトへのリンクは必須です。ディストリビューションパッケージに名前を付けるためのボーナスポイントです。 また、Linuxで動作することがわかっていて、指示を参照できる場合を除き、提案しないでください。私はすぐにカーネルを切り替えることを疑っています./configure; make; make install。確かにCをハッキングするつもりはありません。 警告:ディストリビューションがcoreutilsを使用している場合、それらを削除するとディストリビューションの機能が損なわれる可能性があります。ただし$PATH、ほとんどのスクリプトは絶対パスを使用する必要があるため、これらを最初に配置しても問題はありません。

6
su worldはなぜ実行可能ですか?
複数のユーザーがリモートでログインするヘッドレスサーバーがあります。他のユーザーはいずれもsudoersファイルに含まれていないため、を介してrootを取得することはできませんsudo。ただし、上のアクセス許可はルートパスワードのブルートフォース試行を阻止するものでsuは-rwsr-xr-xありません。 ユーザーがrootパスワードを知っていれば、とにかくシステムを危険にさらす可能性があると主張することもできますが、私はそうではないと思います。OpenSSHはとで構成されてPermitRootLogin noおりPasswordAuthentication no、他のユーザーはサーバーに物理的にアクセスできません。私の知る限り、/usr/bin/su私のサーバーでルートを取得しようとするユーザーにとって唯一の手段は、世界の実行許可です。 それが役に立たないように思えるという点で、さらに私を困惑させます。実行suする必要がなく、直接実行できますsudo suが、これはほとんど不便ではありません。 私は何かを見落としていますか?su歴史的な理由で、世界はそこだけで許可を実行していますか?私がまだ遭遇していない許可を削除することの欠点はありますか?
20 sudo  su  headless 

2
ファイルシステムウォッチャーを使用して2台のコンピューター間でフォルダーを同期し、ファイルが変更されるたびにすぐに複製されるようにする
私が持っています: IP 203.0.113.0ポート1234でSSH経由で接続するLinuxサーバー ホームコンピューター(ルーターの後ろ)、パブリックIP 198.51.100.17、DebianまたはWindows + Cygwinのいずれか フォルダ持ってするのが最も簡単何/home/inprogress/ ビットのように、(両方の方向に)同期をrsyncしかし、ファイルシステムウォッチャーとファイルが変更されるたびに、それはすぐに他の側に複製され、その結果は、?(つまり、手動で同期プログラムを呼び出す必要はありません) サーバーがヘッドレスであるため、コマンドライン/ GUIなしのソリューションを探しています。 Linux / Debian組み込みソリューションはありますか?

4
プログラムを呼び出すときに現在の作業ディレクトリを設定するPOSIX(または少なくとも一般的な)ユーティリティはありますか?
我々は持っているENV(1)私たちは(例えば実行するコマンドの環境を変更することをenv MANPAGER=more man dtrace)。同様のものがありますが、コマンドを開始するディレクトリを変更しますか? 理想的には、次のようになります。 theMagicCommand /new/cwd myProgram このように、他のenv(1)のようなコマンドで「連鎖」させることができます。たとえば、 daemon -p /tmp/pid env VAR=value theMagicCommand /new/cwd myProgram これまでのところ、残念ながらenv(1)と同じインターフェースを持たない次のソリューションを考えることができます。 cd /new/cwd && myProgram また、次のような単純なシェルスクリプトを作成することもできます。 #! /bin/sh - cd "${1:?Missing the new working directory}" || exit 1 shift exec "${@:?Missing the command to run}" しかし、私はすでに存在するものを探しています(少なくともmacOSとFreeBSDで)。 myProgram必ずしもデスクトップアプリケーションではありません(この場合、.desktopファイルでPathキーを使用できます)。
20 shell  freebsd  cwd 

3
bashの「true」の目的は何ですか「if sudo true; それから」
ユーザーがスーパーユーザー特権を持っているかどうか、またそうでないかどうかをテストするこのbashスクリプトを一緒にハックしました。最終的に、次の2行を削除できるように、2番目の「if」ステートメントを反転させようとしています(エコー「password ok」と、次の行のelse) # Root user only if [[ "$EUID" != 0 ]]; then sudo -k # make sure to ask for password on next sudo if sudo true; then echo "Password ok" else echo "Aborting script" exit 1 fi fi echo "do my ops" 4行目の "true"の目的は単なるnullステートメントですか? 4行目のテストを反転する必要がありますが、どうすればよいですか?ここに私が試したものがあります: if sudo false; …
20 bash  sudo 

5
別の変数に応じて、変数に異なる値を簡潔に割り当てるにはどうすればよいですか?
このシェルスクリプトを短縮するにはどうすればよいですか? CODE="A" if test "$CODE" = "A" then PN="com.tencent.ig" elif test "$CODE" = "a" then PN="com.tencent.ig" elif test "$CODE" = "B" then PN="com.vng.pubgmobile" elif test "$CODE" = "b" then PN="com.vng.pubgmobile" elif test "$CODE" = "C" then PN="com.pubg.krmobile" elif test "$CODE" = "c" then PN="com.pubg.krmobile" elif test "$CODE" = "D" then …

1
「#!/ bin / sh -a」の-aがsedに影響し、「set -a」が影響しないのはなぜですか?
次の.shファイルを実行した場合: #!/bin/sh -a echo "a" | sed -e 's/[\d001-\d008]//g' 結果はエラーです: sed:-e expression#1、char 18:無効な範囲終了 しかし、次の.shファイルを実行すると: #!/bin/sh set -a echo "a" | sed -e 's/[\d001-\d008]//g' エラーなしで実行されます。2番目のコードは最初のコードと同等であると想定されていませんか?最初のエラーはなぜですか?

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