Unix & Linux

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

1
プログラムが完了するまでtmuxをブロックする
tmuxのリモートコントロール機能に感心しました。 tmux new-window -t p12346 'echo foo;sleep 10' これにより、p12346という名前のセッションに新しいウィンドウが作成され、画面には何も印刷されません。それは素晴らしい。しかし、どのようにして上記のコマンドに、スリープが終了するまで待機してから戻るように指示できますか?つまり、これも同じようにしたいのですが、実行に10秒かかります。 time tmux new-window -t p12346 'echo foo;sleep 10' バックグラウンド これが実行可能な場合は、GNU Parallelの機能になる可能性があります。現在実行中のジョブには、それぞれのウィンドウからにアクセスtmuxできるため、各ジョブの進行状況をリアルタイムで追跡できます。 したがってtmux、フォアグラウンドでは実行されません。ユーザーはそれに接続する必要があります。
8 tmux 

2
Centos 6.5でresolv.confを自動生成する方法
CentOS 6.5をインストールし、次のファイルを構成しました。 /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=aa:bb:dd:dd:ee:ff TYPE=Ethernet UUID=adfddfaf-9sda-adse-dfs4-asdfsdfdfg97 ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=dhcp /etc/sysconfig/network NETWORKING=yes HOSTNAME=localhost.IM NTPSERVERARGS=iburst コンピュータを再起動するとifconfig eth0、IPアドレスが表示されますが、resolv.confファイルは空です。それが言うことはすべてですsearch IM。nameserversファイルにリストされていません。 ただし、起動後dhclient -r、IPアドレスを解放してからIPアドレスdhclient eth0を取得するためにresolv.conf入力すると、DNSネームサーバーが正しく入力されます。 構成ファイルからこれが自動的に行われないのはなぜですか?dhcp私のifcfg-eth0ファイルで有効にすると、これを処理する必要があると思いました。 CentOSのドキュメントには、設定NETWORKING=yesがブート時にネットワークを開始することが記載されています:http : //www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-dhcp-configuring-client.html。 どんな助けでもありがたいです。

8
行の残りのGrep…試合後
次の構造を持つ2行のみを含むファイルがあります。 $ cat /tmp/pwpower.log 000D6F0000D34227, -114.10 000D6F0001A405C4, -130.09 値は私の太陽光発電所の電力値です。負の値は生成を意味します。 私はgrep / sed / awkを介して抽出された値が必要です-最も賢い方法は何でも。両方の値を別々に、マイナス記号なしで抽出する必要があります。 私が今やっているのはちょっとばかげていますが、うまくいきます。多くの人が私にとってより賢い方法を持っていると確信しています:-)もちろん、ここでは値とマイナスのみを表示しています。 最初の値を取得するには: cat /tmp/pwpower.log |grep -o "\-.*" | head -n 1 2番目の値を取得するには: cat /tmp/pwpower.log |grep -o "\-.*" | tail -n1 そして関連する質問、これらのSTRINGを取得して変換してSUMを計算できるようにする簡単な方法はありますか?

1
これらの4つのコマンドの違いは何ですか(fifo、プロセス置換、リダイレクト…)
私の目標は、ncおよびを使用して単純なエコーサーバーを作成することfifoです。私はそれを行うための最良の方法を探しているのではなく、単に次のコマンドのセマンティクスを理解しようとしているだけです(フォークが発生するのはいつ、なぜ、何が変わるのか、なぜコマンドの動作が異なるのか...)。 すべてのコマンドは、POSIXで動作する場合、私はわからないので、私は、バッシュを使っていshたりzsh、ksh... タイトルで言及している4つのコマンドを次に示します(既に実行したと想定していますmkfifo fifo)。 cat fifo | nc -l localhost 8888 > fifo exec 3<> fifo && nc -l localhost 8888 <&3 >&3 && exec 3>&- nc -l localhost 8888 <(cat fifo) > fifo nc -l localhost 8888 < fifo > fifo 今、私は4つのコマンドが同じことをすることを期待しています、少なくとも最後の2つは同じことをすることです。 最初のコマンドは期待どおりに動作します。クライアントが接続を閉じるとシャットダウンする単純なエコーサーバーです。 1のように動作します。 サーバーに接続してデータを送信できますが、何も返されません。クライアント接続を閉じると、サーバーがシャットダウンします。 サーバーに接続できません。サーバーは永久に待機します。

6
エントリを分割せずに大きなファイルをチャンクに分割する
UIEE形式でフォーマットされたかなり大きな.msgファイルがあります。 $ wc -l big_db.msg 8726593 big_db.msg 基本的に、ファイルは次のようなさまざまな長さのエントリで構成されています。 UR|1 AA|Condon, Richard TI|Prizzi's Family CN|Collectable- Good/Good MT|FICTION PU|G.P. Putnam & Sons DP|1986 ED|First Printing. BD|Hard Cover NT|0399132104 KE|MAFIA KE|FICTION PR|44.9 XA|4 XB|1 XC|BO XD|S UR|10 AA|Gariepy, Henry TI|Portraits of Perseverance CN|Good/No Jacket MT|SOLD PU|Victor Books DP|1989 BD|Mass Market Paperback NT|1989 tpb …

2
パターンに一致するURLをスパイダーしないようにwgetに指示しますか?
スパイダーされたときのサイトの動作をテストしたい。ただし、「ページ」という単語を含むすべてのURLを除外します。私は試した: $ wget -r -R "*page*" --spider --no-check-certificate -w 1 http://mysite.com/ この-Rフラグは、「ページ」という単語を含むURLパターンを拒否することになっています。それが機能していないように見えることを除いて: Spider mode enabled. Check if remote file exists. --2014-06-10 12:34:56-- http://mysite.com/?sort=post&page=87729 Reusing existing connection to [mysite.com]:80. HTTP request sent, awaiting response... 200 OK このようなURLのスパイダーを除外するにはどうすればよいですか?
8 wget  url 

4
git archive fatal:プロトコルでサポートされていない操作
私はそうすることができますgit clone... git clone https://github.com/stackforge/puppet-heat.git ...問題ありません。しかし、私はクローンに付属しているすべてのgit metaのものを除外したいので、使用すると思っていましたgit archiveが、次のエラーが発生します。 $ git archive --remote=https://github.com/stackforge/puppet-heat.git fatal: Operation not supported by protocol. 誰か、なぜ私が間違っているのか知っていますか?
8 git  github 

2
SSH:どちらが私の公開鍵か
大学のコンピュータクラスタにアクセスする必要があるため、私の大学からSSH公開キーが要求されました。 Linux ssh-keygen -t dsaコマンドを使用してSSHキーを生成しました。しかし、私は彼らが私にどんな情報を必要としているのかわかりません。 ssh-keygen -t dsa生成されたコマンド: 重要な指紋 キーのランダムアート画像 id_dsa id_dsa.pub これらのうちどれが私の公開鍵ですか?
8 ssh 

2
スワップアウト-どうなりますか?
512 MBのRAMと348 MBのスワップを備えたDebian VMマシンで、1 GBのファイルをエディターで開いてメモリが不足するとどうなりますか? システムをクラッシュさせますか?そうでない場合、Linuxはこれをどのように処理しますか? Swapspaceをインストールして、必要に応じて自動的かつ動的に十分なスワップを作成するのは賢明ではないでしょうか? sudo apt-get install swapspace


1
lessで「&pattern」検索を終了する
一致する行のみを表示lessする形式の検索を使用した後&pattern、ファイル内のすべての行の表示に戻るにはどうすればよいですか? Esc私の知る限り何もしません。Ctrl+もcしません。q単に終了しますless。
8 search  less 

1
dm-cryptによるフルディスク暗号化(LUKSなし)
現在/boot、USBスティックに別のLUKSヘッダーなしでプレーンモードでdm-cryptを使用して完全なディスク暗号化を達成しようとしています。 私の主な目標は、Debianベースのディストリビューションでもっともらしい否認を達成することです。ここでは、パーティションを暗号化して、別のUSBキーcryptsetupにインストールすることに成功しました/boot。暗号化のヘッダーはLUKSに保存されていないため、すべて正常に機能します。initramfs画面で手動で入力する必要がありますが、このステップでは、initramfsにcryptsetupがないことを示すエラーが表示されるだけです( "/ bin / sh:cryptsetup:not found ")ヘッダーを解析しようとしました。 結論として: dev/sdadm-crypt(/rootおよび/homeボリューム)を使用して暗号化: cryptsetup --hash=sha512 --cipher=twofish-xts-plain64 create crypt /dev/sda dev/sdb grubがインストールされたブートスティック ブートスティックから正常に起動できます。Ubuntuのスプラッシュスクリーンが約20秒間表示されますが、これは私がもっともらしい否認可能性を達成したかったのですが、それがinitramfsに検出されないという文句が表示されます。/dev/mapper/rootこれも達成したかったことです。 問題は、パスワードを入力してブートを続行できるcryptsetup行を解析したい場合、initramfsが「cryptsetup:not found」について文句を言うことです。 この不満は本当だと思います。私の質問は、cryptsetupをinitramfsにインストールして、パスワードプロンプトでさらに起動できるようにする方法です。 また、私は私が適切なエントリを追加することで何かを省略してることを知って/etc/fstab、/etc/crypttabそして起動時にデバイスが見つかりません。 これらは私が見つけてすべての現在の設定をセットアップするために使用したガイドです、おそらくこれは私が私の質問でカバーしなかったことを明らかにします: http://and1equals1.blogspot.ro/2009/10/encrypting-your-hdd-with-plausible.html https://wiki.archlinux.org/index.php/Dm-crypt/Encrypting_an_entire_system#Plain_dm-crypt 最初のものは少し時代遅れで、2番目のものはArch Linux用ですが、私はそれらのうち2つを最新のLubuntuインスタレーションで少し調整して使用しました。

4
ファイル内の指定された日付よりも新しい行を削除します
指定された日付よりも新しい行を削除する方法に行き詰まっています。これはファイルの内容の抜粋です。 buildsave.txt 647919 2013/11/30 647946 2013/11/30 647955 2013/12/01 648266 2013/12/03 648267 2013/12/03 648674 2013/12/04 2013/12/03より新しい行のみを残して削除したい 647919 2013/11/30 647946 2013/11/30 647955 2013/12/01 これはどのようにbashを介して実行できますか?

3
Vim:行ごとに貼り付ける
私が含んでいるファイルがあるとしましょう: xxx yyy zzz そして別のファイル: kkk qqq ppp 取得したい: xxxkkk yyyqqq zzzppp それはいくつかのコマンドでVimで可能ですか?(私はVISUAL BLOCKを使用しようとしましたが、成功しませんでした)。 私の特定のケースでは、貼り付ける行が多い2つの大きなファイルがあるので、答えはいくつかのシェルコマンドになる可能性もありますが、同じファイル内でもそれを行う方法があるかどうか知りたいです。
8 vim  command  editors 

2
各ファイルサイズを表示せずに拡張子をフィルタリングしてフォルダー内の合計ファイルサイズを表示する方法
du -hc *zipフォルダー内のzipファイルの合計サイズが表示されますが、フォルダーのすべてのファイルサイズも表示されます。合計サイズだけが必要です。 単一のファイルサイズを表示せずにフォルダーの合計サイズを表示する方法はありますか?

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