Unix & Linux

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

6
「変更された場合にコピー」操作を実行するにはどうすればよいですか?
一連のファイルをディレクトリAからディレクトリBにコピーしたいのですが、ディレクトリAのファイルがディレクトリBのファイルと同一である場合、そのファイルはコピーしないでください(したがって、その変更時間は更新しました)。独自のスクリプトを作成せずに、既存のツールでそれを行う方法はありますか? ユースケースを少し詳しく説明します:私は.c一時ディレクトリに多数のファイルを自動生成します(すべてのファイルを無条件に生成する必要がある方法によって)。そして、それらを再生成するときに、コピーしたいだけです実際のソースディレクトリに変更されたものは、変更されていないものを(古い作成時間で)makeそのままにしておくため、再コンパイルする必要はありません。(.cただし、生成されるファイルのすべてがファイルではないため、テキスト比較ではなくバイナリ比較を行う必要があります。) (注:これは、https://stackoverflow.com/questions/8981552/speeding-up-file-comparions-with-cmp-on-cygwin/8981762#8981762で尋ねた質問から生まれました。この操作を実行するために使用していたスクリプトファイルを高速化するために、特にシェルでこれを行う簡単な方法からスクリプトはcmpファイルのすべてのペアで何かを呼び出しますが、これらのプロセスをすべて開始するには時間がかかりすぎます。)




5
Linuxの/ usrおよび/ tmpディレクトリでスペルの母音が欠落しているのはなぜですか?
私はこれについてよく考え始めましたが、良い答えは見つかりませんでした。なぜ、これらの二つのUnixのディレクトリはありません/userし、/temp代わりに? 下の他のすべてのディレクトリroot1のようにそれらを推測正確に何のように見えるが、これらの二つは奇妙に思えるが、私はいつものようにそれらを推測しているだろうuserとtemp。 スペルの歴史的な理由はありますか?


5
Mac OS Xのウィンドウシステムのアーキテクチャは何ですか?
クライアントがソケットを介してサーバープロセスに接続し、特定の操作を実行するためにウィンドウサーバーに操作を送信するX11システムの仕組みに精通しています。 しかし、GUIアプリケーションがMac OS Xのウィンドウシステムとどのように対話するかを説明していません(そして、良いドキュメントを見つけることができませんでした)。 アプリはどのようにウィンドウシステムからイベントを受信しますか? アプリはカーネルまたはウィンドウシステムサーバーに登録する必要がありますか? ウィンドウシステムは、アプリが表示を更新するようにどのように要求しますか? アプリはどのようにして再表示操作をトリガーしますか? ソケットベースのプロトコル、またはウィンドウシステムへの他のRPCシステムはありますか? ウィンドウシステムまたはアプリケーションは、ハードウェアに直接アクセスできますか? クライアントアプリとウィンドウシステムの間で利用可能な操作は何ですか?




1
apt-getは実際にどのように機能しますか?
さて、apt-get {install|upgrade|remove} mypackagesバイナリとその構成データファイルおよび依存関係をインストール、アップグレード、または削除する方法を理解しています(実際にremoveは、追加のフラグが提供されない限り、バイナリのみが削除されます)。 これがどのように使用されるかを探しているのではなくman、それが何をしているのかをハイレベルに探しています。私の最終目標は、複数のリモートマシンに(makeファイルで作成された)カスタムソフトウェアをインストールおよび管理する手段を作成することです。このプロセスについてさらに学習する必要があります。この質問への回答が使用されているディストリビューションに基づいている場合は、Debianに合わせてください。 一般的な仕組みに加えて、次の具体的な質問があります。 aptリポジトリにアクセスしているクライアントはどのようにファイルを追跡しますか? リポジトリを同じオペレーティングシステムでホストする必要があります(つまり、aptリポジトリをredhatでホストできますか)。 ファイルをインストールする場所はどのように指定されていますか?これは.debファイルで指定されていますか? リモートマシンはどのようにリポジトリにアクセスしますか?それは単にftp(s)またはhttp(s)ですか? リポジトリをホストしているマシンは特別なソフトウェア(gitリポジトリのgitlabなど)を実行していますか、それとも単なる構造化ファイルシステムですか?

2
CSVファイルを処理するために1つのスクリプトに複数のsedコマンドを結合します
このようなCSVファイルを持っている: HEADER "first, column"|"second "some random quotes" column"|"third ol' column" FOOTER 次のような結果を探します: HEADER first, column|second "some random quotes" column|third ol' column 言い換えると、「FOOTER」を削除すると、開始、終了、および前後に引用符が付きます。 これまでのところ、このコードは動作します: sed '/FOOTER/d' csv > csv1 | #remove FOOTER sed 's/^\"//' csv1 > csv2 | #remove quote at the beginning sed 's/\"$//' csv2 > csv3 | #remove quote …
34 sed  csv 

2
bashでドル記号の後に角括弧$ […]が続くとはどういう意味ですか?
の$[expr]ように算術展開を実行するよう$((expr))です。しかし$[、bashのマニュアルには言及がありません。このコマンドでは結果が得られません。 gunzip -c /usr/share/man/man1/bash.1.gz | grep -E '\$\[' この演算子は何であり、その動作はどこでも標準化されていますか? 私のbashバージョン:GNU bash、バージョン3.2.51(1)-release(x86_64-apple-darwin13)
34 bash  arithmetic 

3
「警告:ファイルシステム「ext2」は埋め込みをサポートしていません。」しかし、私のシステムも埋め込まれていません。
私はDebianでのJessieのリリースについて自分自身を読んでいるので、問題、つまり警告を引き起こす可能性のあるメッセージについては非常に慎重です(妄想と言われるべきです)。私のシステムはDebianテスト/不安定版がインストールされたデスクトップで、両方/bootとのext4パーティションに/ありgrub-pcますが、Debian のパッケージをアップグレードしているときにこのメッセージが表示されます: Installing for i386-pc platform. Installation finished. No error reported. Installing for i386-pc platform. grub-install: warning: File system `ext2' doesn't support embedding. grub-install: warning: Embedding is not possible. GRUB can only be installed in this setup by using blocklists. However, blocklists are UNRELIABLE and their use is discouraged.. Installation …
34 grub2 


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