Unix & Linux

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



4
「diff」コマンドを使用して、どうすれば自分の予算を最大限に活用できますか?
私はdiff過去にLinux コマンドを使ってみましたが、あまり運も忍耐もありませんでした。私は通常、DiffMergeやKdiffなどのGUIユーティリティを使用することになります。 最近、私はdiffsshを介してリモートシステム上のファイルを比較するために再び使用しようとしましたが、この-y / --side-by-sideオプションは非常に役立つことがわかりましたが、このユーティリティを最大限に活用していないように感じます。 だから私は次のことを達成する方法に興味があります: 変更を強調表示するか、色分けして出力を読みやすくします マージ-違いのある行を選択し、変更をファイルの1つに反映します また、グーグルで良い例を多く見つけていないので、差分を最大限に活用するためのlinux-fuの秘密がある場合は、教えてください。私は主にテキストベースの設定ファイルを比較しますが、どんなトリックやヒントも素晴らしいでしょう。 参考のために -DiffMergeユーティリティでは、色の強調表示で変更を並べて簡単に表示できます。上部のアイコンを使用すると、「すべてを表示」、「違いを表示」、「コンテキストとの違いを表示」のビューを切り替えることができます。コマンドプロンプトでこの機能の一部を気に入っていただけると思います。 ps:非常に便利だと思うもう1つのオプションは--suppress-common-lines、この簡潔で読みやすいブログ投稿で学んだオプションです。

2
forループの並列化
for次のコードのループを並列化したいと思います。これを行う方法? #!/bin/bash N=$1 n=$2 for (( i=1; i<=$N; i++ )); do min=100000000000000 //set min to some garbage value for (( j=1; j<=$n; j++ )); do val=$(/path/to/a.out) val2=`echo $val | bc` if (( $val2 < $min )); then min=$val2; fi done arr=("${arr[@]}" "$min") done

2
LVMボリュームの所有権(またはグループ)を永続的に変更する
LVMボリュームの所有権(または少なくともグループ)を永続的に変更するにはどうすればよいですか? 私はudevを使用する必要があると考えましたが、ルールがどのように見えるべきかわかりませんか? LVM /ディスクの所有権をユーザー/グループの仮想ボックスに変更したいとしましょう。
9 permissions  lvm  udev 

1
chcon:SELinuxでnagiosをインストールしているときに、ラベルのないファイルに部分的なコンテキストを適用できません
CentOSにNagiosコアをSELINUX = enforcingで設定しています。 走ろう chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/ マニュアルで提案されているように、私はこのエラーメッセージを受け取ります: chcon: can't apply partial context to unlabeled file `cmd.cgi' chcon: can't apply partial context to unlabeled file `trends.cgi' chcon: can't apply partial context to unlabeled file `histogram.cgi' chcon: can't apply partial context to unlabeled file `avail.cgi' chcon: can't apply partial …


3
lessへのパイプと編集:「標準入力を編集できません」エラー。回避策は?
最近、でファイルをページングするとless、vEmacsでバッファを押して開くことができることを学びました。これは、環境変数が$EDITOR正しく設定されている限り機能します。私の場合は次のようになります。 export EDITOR='env TERM=xterm-256color emacs -nw' 上記は、実行するターミナル内でemacsをロードする機能を私に与えますless。 ただし、コマンドをにパイプする場合、上記のトリックは機能しませんless。これを行うlessと、次のメッセージが表示されます。 Cannot edit standard input (press RETURN) 私の質問は、なぜこれが起こるのですか?しかし、最も重要なことは、それに何らかの回避策がありますか?
9 emacs  less 

4
アプリケーションリストからメモ帳を削除する方法?
Wineをインストールすると、メモ帳はデフォルトのアプリケーションになり、不明なテキストファイルをダブルクリックで開くことができます。この動作を排除して、不明なタイプのファイルを開くために提供されているアプリケーションのリストからメモ帳を削除したいと思います。を削除しましたが/usr/share/applications/wine-notepad.desktop、役に立ちませんでした。メモ帳を正しく無効にするにはどうすればよいですか? XUbuntu 11.10(XFCE 4.8)とWine 1.3を使用しています。

5
ramfsをユーザーとしてマウント
私のfstabエントリ: none /home/jreinhart/ramdisk ramfs defaults,user 0 0 マウント前のディレクトリ: drwxrwxr-x 2 jreinhart jreinhart 4096 Oct 17 11:31 ramdisk 後のディレクトリmount ramdisk: drwxr-xr-x 2 root jreinhart 4096 Oct 17 11:31 ramdisk だから、あなたは問題を見ることができます。マウントすると、所有者がrootに変わり、グループのアクセス権が移動するr-xため、このramdiskを使用できなくなります。何ができますか? 私はそうすることなくこれをやろうとしているsu。

4
EmacsまたはVimでのブロック編集*ライブ*
jEditはブロック編集をサポートしていますが、EmacsとVimは同じテーマに関していくつかの深刻なユーザビリティの問題を抱えているようです。誰かがここで未知数を記入できれば、どちらかのエディタを使用するほうがはるかに耐えられます。 実際の長方形選択:画面上の選択が長方形である場合、Emacsが制限しているように見える領域の計算に使用される線形選択ではありません。 jEdit:押したままCtrl選択します。 Vim:クリックしCtrl-vて選択します。 Emacs:不明 ; 400行以上のプラグインが必要なようです。 ライブ長方形編集:ブロックを選択した後に編集すると、すべての線で結果がどのように見えるかを確認できます。 jEdit:入力を開始するだけで、最終的な結果が表示されます。 Vim:クリックしShift-iて入力します。を押しEscて挿入モードを終了するまで、最終結果は最初の行にのみ表示されます。すべての行の結果をすぐに確認する方法があるかどうかは不明です。 Emacs:不明 ; 唯一の方法のように見えC-x r t、を押した後にテキストを埋めるように設定しますRet。 テキストの外側の位置での選択の開始と終了:たとえば、各行の最初のN文字を削除したいのですが、最初と最後の行に含まれる文字がN未満です。 jEdit:問題ありません。ブロック選択はテキストの外側から開始できます。 VIM: :set virtualedit=block。 Emacsは:可能かもしれないとartist-mode、および/またはpicture-mode。 ブロックインラインを貼り付け:あなたは複数行を貼り付けたかのように、すでにそこにテキストをプッシュする、のように、コピーされたブロックを貼り付けダウン、ない権利。 jEdit:デフォルト。ブロックをブロックとして貼り付けるには、最初に別のブロックを選択する必要があります。 VIM: OEscVp。 Emacs:不明。 一般的なEmacsブロック選択機能はcua-modeプラグインにあります。
9 vim  emacs  editors 



2
Linuxの最小TCP MSS
LinuxのTCP MSSは少なくとも88(include / net / tcp.h)でなければなりません: /* Minimal accepted MSS. It is (60+60+8) - (20+20). */ #define TCP_MIN_MSS 88U 私の質問は、「60 + 60 + 8」をどこで思いついたのか、そしてなぜですか?20 + 20は、IPヘッダー+ TCPヘッダーから取得されます。 編集:ヘッダーを詳しく見てみた後、式は次のように私を探します: (MAX_IP_HDR + MAX_TCP_HDR + MIN_IP_FRAG) - (MIN_IP_HDR + MIN_TCP_HDR) 問題はまだ残っています:なぜですか?なぜLinuxカーネルはこの公式を使用して、たとえば20バイトのTCPセグメント(の強制フロー)を禁止するのですか?ここでiperfを考えてください。 EDIT2:これが私のユースケースです。ソケット/接続のMSSを低く設定すると、スタックによって送信されるすべてのパケットのサイズが小さくなります。パケット/秒のテストでiperfを使用する場合、MSSを低く設定したいと思います。MSSのこの下限のため、128バイト(142バイトのイーサネットフレーム)より小さいIPパケットをワイヤで取得できません。RFC 2544に従って、64バイトのイーサネットフレームサイズにできるだけ近い値を取得したいと考えています。理論的には、18 + 20 + 20 <64が可能です。

1
カスタムカーネル:モジュールの組み込み時にファームウェアのロードに失敗する
すべてのモジュールを組み込みたいのですが、これは失敗しiwlagnます: iwlagn 0000:03:00.0: request for firmware file 'iwlwifi-6000-4.ucode' failed. iwlagn 0000:03:00.0: no suitable firmware found! マイクロコードファイルはに存在し/lib/firmware、iwlagnモジュールとしてコンパイルすると、全体が問題なく動作します。私はそれがどこでファイルを探しているのか、何が間違っているのか分かりません-何かアイデアはありますか?

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