Wait, what's iSH? iSH is a project to get a Linux shell environment running locally on your iOS device, using a usermode x86 emulator. iPadOS? You bet. iSH also runs on iPad, bringing a terminal to larger displays as well.
はじめに LinuxでCtrl-C打ったらコマンドが中断されるとか。皆さんご存知ですよね。こういうことに関連したちょっとした四択クイズです。Linux使い各位、当然、全問正解できますよね? 問題 いずれもPuTTYなりTeraTermなりのターミナルソフトでLinuxマシンにSSHで接続した、ログインシェル上での対話操作の上でのお話です。ターミナルソフトなんかは特に設定をいじらないことにします。一応。それと、シェルは大体なんでも同じだと思うのですが、念のためbashと指定しておきます。 Q1: シグナル送ったのは誰? 「はじめに」でも書きましたが、Ctrl-Cを入力すると、実行中のコマンドを停止させることができますね。例えば次のように。 これはSIGINTというシグナルが送られるためです。このシグナルはkill -INT プロセスIDなんてコマンドなんかで手動で送ることもできますね。 では
sudo でコマンドを実行すると、「command not found」とエラーに。環境変数 PATH が通っていないと思って設定しても変わらず。実は sudoers の設定でセキュリティ上環境変数が初期化されている。そのときの対処備忘メモ。 現象 sudo でコマンドを実行「command not found」 (コマンドが見つかりません) とエラーに.bash_profile にパスを設定してみる vi ~/.bash_profile PATH=$PATH:$HOME/bin:/sbin:/usr/sbin から PATH=$PATH:$HOME/bin:/sbin:/usr/sbin:/usr/local/bin に変更。 sudo でコマンドを実行再び「command not found」 (コマンドが見つかりません) とエラーでパスが通っていない さらに突き詰めると、 sudoe
はじめに SSH 接続で時間の掛かるシェルスクリプトをバックグラウンドで走らせて帰りたいのに、SSH 接続を切るとジョブが死んでしまいます。SSH 接続に限らず目の前の OS からログアウトしたりターミナル エミュレータを終了しても同じ現象が起こります。 この症状は正常です。なぜなら、バックグラウンド ジョブを起動したプロセス(ログイン シェル)が子プロセスである該当のバックグラウンドジョブをハングアップ シグナル( HUP )によって終了させるからです。 シェルスクリプトを起動した親プロセスは子プロセスの終了状態を監視しています。ですからログアウトして親プロセスであるシェルが終了すると子プロセスはゾンビ プロセスとなってしまうので親プロセスとなるシェル(ログインシェル)は子プロセスであるバックグラウンド ジョブを kill ( kill -HUP ) するのです。 nohup コマンド
人に教えるには自分が完全に理解していなければ、ということで調査・検証した結果。 動機 シェルからバックグラウンドで処理を行うには? nohup コマンド実行 & を使う。 コマンド実行 => Ctrl-Z => disown を使う。 定番は前者だが、両者の違いは何なのか? disownとは一体何をするのか? この機会に調べてみた。 結果のまとめ 長くなったので最初にまとめを。しかしまとめも長い。 (後自分が読む時に一番下にスクロールしたくないので…) ジョブテーブル シェルはセッションに紐づくジョブテーブルを持っている。 バックグラウンドジョブを登録している。 (フォアグラウンドジョブは未確認。ソースを読むしかないか) jobsビルトインコマンド で一覧を参照可能。 ここに見える限り、シェルのexit時にSIGHUPを送る。 この一覧にない場合、exit時にSIGHUPは送らない。 シェ
人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 元々ホスティング会社で働いていたので、その特性上ownerやpermissionを色々と弄る事が多く、数年前の社会人時代にchmodやchownをもっと楽に使えないかなぁと調べた時に目から鱗だったのがchmodやchownのreferenceオプションでした。 今回は単にreferenceオプション楽ですよね、という記事なのでご存知の方は退屈な記事だと思いますが、まわりに聞いてみた所意外と知られていなかったりしたので、ブログエントリにしておこうと思います。 referenceオプションを使うと、任意のファイルを指定することで、変更対象のownerやpermissionを指定したファイルと同じ設定にすることができます。 例えば、/bin/pin
お世話になります。 lsコマンドの使用方法で質問があります。 例えば本日(2008年11月24日) ls -al コマンドでファイルのタイムスタンプを確認すると 最終更新日時が「2008年11月23日22時41分08秒」のように6ヶ月以内のファイルは 11月23 22:41 と表示されますが、 最終更新日時が「2007年01月06日18時05分04秒」のように6ヶ月以上昔のファイルは 1月 6 2007 と表示されます。 最終更新日時がいつであっても常に 2007/01/06 18:05:04 のように固定の YYYY/MM/DD HH:MM:SS 形式(秒も出力し、ゼロサプレスも行わない形式)で表示したいのですが その方法がわからずに困っています。 (ログファイルとかで秒が表示されるとうれしいです。) 御存知の方、よろしくお願いします。
あるディレクトリ配下の全ての.svn達を消し去ろうとしてたんですが、わざわざスクリプト書くのも何だかなぁ。と思っていたらfindに-execというオプションが有るのをはずかしながら初めて知りました。 マニュアル -exec command ; command を実行する。コマンドの戻り値が 0 ならば真。 find のコマンドラインで指定されたこれ以降の引き数は、 `;' を含む引き数にいたるまで、すべてcommand の引き数とみなされる。 文字列 `{}' は現在処理しているファイル名に置き換えられる。 これは command 引き数のどこにあってもよく、単独で置かれていなくてもよい (単独で置かれていなければならないような find もある)。 これらの文字はシェルによって展開されないよう、 `\' によってエスケープするか引用符で囲む必要がある。 コマンドは find を実行したデ
Landscape トップページ | < 前の日 2005-07-02 2005-07-06 次の日 2005-07-07 > Landscape - エンジニアのメモ 2005-07-06 find コマンドの -mtime は +1 でも2日前のファイルが対象 当サイト内を Google 検索できます * find コマンドの -mtime は +1 でも2日前のファイルが対象この記事の直リンクURL: Permlink | この記事が属するカテゴリ: [unix] [シェルスクリプト] find コマンドの -mtime は +1 でも2日前のファイルが対象となる。つまり、(n + 1) 日前のファイルが対象。n は +0 を指定しても、一日以上前のファイルが対象になる。 - find が古いファイルを検索してくれないとあるテスト用 DB があり、定期的にバックアップを取っている。バ
最近、会社でシェルの操作方法について教えているのだが、 pgrep / pkill / skill / pidof といった 便利なプロセス操作系コマンドを知らない人が実に多い。 プロセスを殺すというのは、よくある作業なので 今回はコレについて書いてみる。 たとえば、これらのコマンドを知らない人が、 指定した名前のプロセスを kill する手順はだいたい 以下のようなものになることだろう。 $ ps aux | grep プロセス名 | grep -v 'grep' # コマンドの出力結果から pid を目で確認 12345 ... .. hoge .. .. $ kill 12345 この作業は非常に面倒で退屈だ。 もし殺さなければならないプロセスがたくさんあったときは どうするのだろうか。 おまけに、grep コマンド自身が候補に含まれてしまう事があるのだが、 grep -v grep
システムコールにrenameというのがあり、それにもとづくrenameコマンドがありますが、通常ファイル名を変更する場合、mvコマンドを使つかいます。renameコマンドが直感的なコマンド体系でないからだと思います。 [root@localhost a1]# man rename 書式 rename from to file renameは指定したファイル名においてfromに最初にマッチする部分をtoで置き換える。 たとえばaaaのファイルをbbbに置き換える場合、以下のように使うことになります。 [root@localhost a1]# ls aaa [root@localhost a1]# rename aaa bbb aaa [root@localhost a1]# ls bbb mvコマンドだと [root@localhost a1]# ls bbb [root@localhost
達人が語る,インフラエンジニアの心得:第7回 失敗を糧にしよう|gihyo.jp … 技術評論社 これを読んで触発されたのでrm代用コマンドについて書いてみようと思います。 ptrashとはrmの代用コマンドで、ファイルをホームディレクトリの.trashというゴミ箱ディレクトリを移動してくれる削除コマンドラインソフトです。 rmの場合、ファイルが有無を言わさず削除されてしまい、初歩的なミスが致命的なトラブルを巻き起こす可能性があるため、rmをptrashで代用します。 ptrashを利用するメリットして rmコマンドのようにファイルをいきなり削除しない 致命的なオペレーションミスを防げる(rm -rf / とか) ゴミ箱に移動したファイルを元の場所(パス)に戻せる 導入環境はCentOS 5.4です yum -y install ptrash 利用方法は非常に簡単。 ファイルをゴミ箱
linuxでどのディレクトリがどれくらい容量をつかっているのか一覧を(出来ればグラフィカルに)確認したいのですが、なにかいい方法はないでしょうか。 webもしくはコンソールからでお願いします。
ディスクの容量を表示するコマンドの使い方。 df コマンド ディスク(パーティション)ごとに使用率を表示する。 「-h」はhuman readable。単位をつけてくれる。 $ df Filesystem 1K-blocks Used Available Use% Mounted on /dev/simfs 10485760 1918208 8567552 19% / none 393216 4 393212 1% /dev $ df -h Filesystem Size Used Avail Use% Mounted on /dev/simfs 10G 1.9G 8.2G 19% / none 384M 4.0K 384M 1% /dev
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く