本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、PDFファイルを画像に変換する「pdftoppm」コマンドです。
はじめに Linux のコンソールで動くいまどきのユーティリティは、出力に色が付いていて見やすくなっているものが多いです。例えば ls コマンドや git diff など、色があるだけで視認性が大幅に向上するツールは色付きで使いたいですよね。ところが、こういった色付きの出力を行うツールはたいてい less と相性が悪い。 のように出力をパイプに流した途端に色が付かなくなってしまいます。建前としては、出力がコンソールのときには最終的に出力を人間が見るので色を付けても構わないが、出力がパイプの時には下流のツールが正しくエスケープシーケンスを処理できるとは限らないので、色付けを無くしてエスケープシーケンスを出力することに起因する問題を未然に防ごう、ということです。 でも、less の場合には -R オプション付ければ色付けのエスケープシーケンスは正しく扱えるんですよね。だから、パイプの向こう側が
LinuxやMacを使っていて、tail -Fやcatを使用時に特定のキーワード(例えばerrorとか)だけをハイライト表示させたい時がある。 だからと言っても、そのキーワードのある行だけが表示されるのは困り、全ての行を表示させたい。 1.grepコマンドを使う そんな時でも、grepコマンドで対応することができる。 以下のように、「$(行末)」を指定しコマンドを実行することで、全ての行を表示させつつ対象のキーワードをハイライトさせることができる。 コマンド | grep --color=auto -e '$' -e 'キーワード' もしくは コマンド | grep -E --color=auto 'キーワード|$' キーワードを複数指定する場合、「-e」でつなげていくか、egrep方式であればパイプでつなげていけばいい。 以下、CentOS 7でやってみた結果がこちら。 なお、色を変更す
/home/foo/.ssh/keyfile 手元のローカルマシンにある鍵ファイル /path/to/dir ローカルにあるディレクトリ username@example.com リモートマシン上のユーザ名とホスト名 /path/to/foo/ リモートマシン上のディレクトリ 結果、リモートマシン上に/path/to/foo/dirというディレクトリが作成される。 このようにすればSSHのパスワードを聞かれずにコマンド実行できるので、スクリプトから実行するときにオススメです。 (リモートサーバ上のSSHの設定を適切にやっておく必要があります)
CentOS7でちょっと便利になっていたのでどうなっているのかなと。 デフォルトの状態で以下のようになっている screen screenのタイトル 端末のタイトル × ユーザ@ホスト名:作業ディレクトリ ○ ユーザ@ホスト名:作業ディレクトリ [screen ウィンドウ番号: ユーザ@ホスト名:作業ディレクトリ] まず、端末の機能として、 ESC]0;端末のタイトルBELを出力すると、これをタイトルとして表示することができる(ESCは0x1b、BELは0x07)。ちなみに「ESC]0;」の0の部分は1や2でも大丈夫なようだ。CentOS7では/etc/bashrcの中で環境変数のPROMPT_COMMANDを指定することでタイトルを「ユーザ名@ホスト名:作業ディレクトリ」にしている PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}
Linuxサーバの障害対応で社内で伝統的に使われているテクニック。I/Oで完全にブロックしているポイントを特定するノウハウ。 問題対応のため、怪しいプロセスをstraceしてみる read(2)やwrite(2)でブロックしていることを発見する read(2)やwrite(2)、connect(2)の引数にはファイルディスクリプタ番号がみえる プロセスIDとファイルディスクリプタ番号を使って、/proc//fd/ の中身をみると、ソケットI/Oで刺さっている場合はソケット番号を発見できる netstat からソケット番号でgrepして接続先を発見する [y_uuki@hogehoge ~]$ sudo strace -p 10471 Process 10471 attached - interrupt to quit read(58, <unfinished ...> Process 10
リアルタイムでアクセスログ等を表示するtailですが、単純に表示するだけではなく、grepで結果をフィルターしたい場合があります。そんな場合の技術メモです。 通常のログ監視等では-fをつけて次のような感じになります。 tail -f access.log grepでフィルターする場合はパイプで繋げます。 例えば、次の例では”.html”の含まれる行のみを表示します。 tail -f access.log | grep ".html" もちろん複数条件もできます。 次の場合は”.html”の含まれる行でかつ、”.gif”は含まれない行が表示されます。 tail -f access.log | grep ".html" | grep -v ".gif" ただし、上記の場合、grepが勝手に結果をバッファーしてしまい、ある程度たまってからでないと表示されません。 リアルタイムで表示されないと
LinuxやUNIXを使う上で、ある程度使えると非常に便利な置換コマンドが、このsedコマンドだ。 今回は、このsedコマンドで覚えておきたい使い方について紹介する。 なお、今回の置換・編集の例として、以下のファイルを用いて説明する。 [root@test-centos7 work]# cat /root/sed_test.conf # line 1 line1=enable # line 2 line2=disable # line 3 line3=enable # line 4 line4=enable 1.基本的な使い方 sedコマンドの基本的な使い方としては、以下のようにコマンドを実行することでファイル・標準出力の内容で文字列の置換を行う事だ。 なお、条件の最後に「g」を付けないと、"最初に、マッチした箇所のみ"置換するので注意。 ファイルの内容を置換する場合 sed 's/置換前
これまで公開鍵ってディレクトリを作って scp してパーミッションを変えてーみたいにかなり面倒くさいことをしてたけど ssh-copy-id コマンドを使うと楽できるみたい。 Linux ディストリビューションなら最初から入ってるものも多そうだけど Mac OS X には入ってなかったので Homebrew から入れる。 $ brew install ssh-copy-id 何はともあれ公開鍵ペアを作る。 $ ssh-keygen -t rsa 作った公開鍵を、目的のホストに設置する。 以下のコマンドを叩くとパスワードでログインを促される。 $ ssh-copy-id -i ~/.ssh/id_rsa.pub <username>@<host> 上手くいけば公開鍵を使ってログインできるようになっているはず。 $ ssh <username>@<host> めでたしめでたし。
筆者について FreeBSDを通じてOSSにささかな貢献を。 日本xrdpユーザ会発起人 xrdp developer FreeBSD developer OSS活動をご支援いただける方を募集しています https://github.com/sponsors/metalefty ■ yum コマンドの出力は grep してはいけない (grep するには向いていない) grep してはいけないわけではないですが、yum コマンドの出力は grep するには向いていません。 普段は FreeBSD ばかりで久々に Linux を触っていたらハマったので備忘のために。 yum コマンドは RHEL 系の Linux ディストリビューションで、パッケージをあれやこれやするためのコマンドですが、とても人にやさしくできているために、人がそのまま目で見る以外の用途、シェルスクリプトの中で加工したり g
最近 Stop using tail -f (mostly) や 「tail -f」を使うのは情弱、情強は「less +F」を使う などless押しな記事が幾つか上がっているんだけど、タイトルが煽り気味なのか若干反感を呼んでいるようなのでless派が職場で肩身の狭い思いをしないようにもう少し便利な使い方を紹介したい。 tail -fの様なScroll forward less +Fで起動またはless起動中にF 元記事にもあるtail -fと同様の振る舞い。正直この機能と検索だけでいいのであればtailで十分。lessの便利なところは様々な機能との組み合わせにあって、これから紹介する機能は基本的にこのモードと組み合わせが可能だ。あと、less開いてFのほうがタイプが面倒くさくないのでおすすめ。 1行で表示する (改行しない) less -Sで起動またはless起動中に-Sr(-Sでモード切
エディタやIDE等で、シンタックスハイライトされたソースコードに見慣れていると、moreやlessでソースコードを表示したときに、ソースコードに色がついていなくて寂しい思いをすることがあると思います。 「GNU Source-highlight」はそんな時に使いたいツールです。名前の通りGNU製のツールで、膨大な数のプログラミング言語をシンタックスハイライトすることができます。 インストール Macの場合、MacPorts / Homebrewを使ってインストールするのが簡単です。 $ sudo port install source-highlight # MacPortsの場合 $ brew install source-highlight # Homebrewの場合 依存関係でいろいろなものがまとめてインストールされてしまうので注意が必要かもしれません。 使用方法 ターミナルから使う
ログファイルの監視に「tail -f」コマンドを使っている方は多いかもしれません。ファイルの末尾を表示する「tail」コマンドに、ファイル末尾に追加されたデータを追跡表示する「-f」オプションを指定することで、手軽にログの監視ができる便利なコマンドです。 しかし最近、「tail -f」より便利なコマンドとして「less +F」の使用を推奨するブログ記事「Stop using tail -f (mostly)」が公開され話題となりました。 「less」はテキストファイルの内容を表示する、ページャーと呼ばれるソフトウェアですが、これに「+F」オプションを指定することで、「tail -f」より便利なファイル監視コマンドとして使えるらしいのです。具体的に「less +F」が「tail -f」より便利な点として以下の2点が挙げられています。 監視モードと通常モードをlessを起動したまま行き来できる
先日「サーバーのセキュリティ設定がなにすればいいかわからない」と相談をうけまして。 自分も初心者の時どこまでやればいいかわからず手当たりしだいにやって沼に入っていたのを思い出しながら自鯖構築したときのメモを元にまとめてみました。 注意 セキュリティ対策は用途や場合などによって違います。 自分で理解したうえで自己責任でおねがいします。 対象読者 Linuxのサーバーを建て慣れていない人 Linuxはある程度さわれる人(自分でパッケージを入れたり、サービスを止めたりできる) ラインナップ ☆は導入の重要度と導入の容易さから個人的偏見からつけた値です。 4つ以上が"最低限やること"だと思ってください。 sshd
「ウェブリブログ」は 2023年1月31日 をもちましてサービス提供を終了いたしました。 2004年3月のサービス開始より19年近くもの間、沢山の皆さまにご愛用いただきましたことを心よりお礼申し上げます。今後とも、BIGLOBEをご愛顧賜りますよう、よろしくお願い申し上げます。 ※引っ越し先ブログへのリダイレクトサービスは2024年1月31日で終了いたしました。 BIGLOBEのサービス一覧
cles::blog 平常心是道 blogs: cles::blog NP_cles() « X220 が Fan Error. により完全に沈黙 :: X220 のファンユニットを交換 » 2014/06/04 /etc/init.d/hoge start と service hoge start は何が違う? systemmanagemant cli 214 4へぇ 普段、Linux でデーモンを制御するには /etc/init.d/hoge というスクリプトを叩いている*1のですが、あるマニュアルを読んだら service hoge を使いましょう的なことが書いてありました。 試してみると確かに /etc/init.d/hoge start の代わりに service hoge start としても同じようにデーモンが起動できるようです。 ただ、困ったことに僕にはこの2つの違いが
LinuxにSSHでログインするのにPuTTYを使ってますが、しばらく放置しておくと、勝手にタイムアウトして切断されてしまいます。 今日作業中にLANケーブル抜いたら(あたりまえですが)切断されてしまいました。でも、今日はなんか方法がないか調べてみました。 SSHのセッション自体を復帰する方法はわかりませんでしたが(無理なのかも)、SSHで入った後にすぐscreenを使っていたので、これで復帰できそうです。 ここが参考になりました。 http://www.dekaino.net/screen/ SSHで入りなおして、ps aux でプロセスを調べてみると、前回のSSHDプロセスとともにscreenのプロセスが残っています。 まずは screen -r で復帰できないかなとやってみましたが、アタッチできるものがない、と言われます。screen -ls でscreenのプロセスを見てみると、前
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く