unix
実際のところ httpd.confというファイルに内容を記載 $ busybox httpd -f -p 8080 -h ./static -c httpd.conf アクセス デフォでは、すべてのURLからアクセスできるように以下の様になっています A:*192.168.100のサブネット以外を禁止するなら A:192.168.10…
実際のところ ディレクトリ構成 $ pwd /home/shuzo/static $ tree . ├── cgi-bin │ └── cmd.cgi └── index.html 1 directory, 2 filesindex.html <h1>Hello, world!</h1> cgi-bin/cmd.cgi #!/bin/sh echo '' echo "<h1>id :1</h1> <p>date: '$(date)'</p>" httpdコマンドでHTML $ busy…
展示会などの自社プロジェクトでPCが違う事が結構あり、 そういう時にコマンドに謎エイリアスが貼られている等々でビミョ~な違いがあって難儀する事があります。今回使用するbusyboxは単一バイナリで*NIX系のよく使うコマンド群を提供してくれるスグレモ…
shuzo-kino.hateblo.jp と似たような話。 GNUのparalellコマンドは文字通り実行を並列にやるコマンドです。 本来の意図として、公式では以下のように説明されています。 GNU parallel is a shell tool for executing jobs in parallel using one or more com…
diffコマンドとはちょっと異なる、比較用コマンド。 実際のところ 二つのファイルを比較するが、ソートされている事が前提。 こんなファイルがあったとして $ cat test1.txt 00 11 22 33 44 $ cat test2.txt 11 44 99まず、共通の物を出力するには"-12" $ co…
bashで'--'を付けると、 それに続くオプションは無効となります。 実際のところ $ bash -c 'echo 123' 123ところがここで“--”をつけると $ bash -- -c 'echo 123' bash: -c: No such file or directoryと、後のオプションが無効化されます。オプションが無効…
普通、バイナリファイルの中身はわかりません。 ところが、stringsコマンドをつかうと、バイナリファイルの中身で表示できるところを表示できます。 実際のところ STRINGS(1) STRINGS(1)NAME strings - find the printable strings in a object, or other bi…
Raspberry PiのようなSBCではI2Cで通信できるもんがあります。 こいつの値をシェル上で楽にとるコマンドとしてi2cgetがあります。 実際のところ I2Cアドレス0x1Cのデバイスの内部アドレス0x11に値を要求するコマンドは以下の通り。 yオプションはi2cdetectと…
x windowはSSHで叩く方法もありますが ホスト側で転送先を明示して使うxhostコマンドという奴もあります。ただ、ある種のバッドノウハウとして扱われるセキュリティガバガバ設定なので 利用は計画的にやらんといけません。 参考もと IBM Knowledge Center
シェルでsocatコマンドが使えるなら、パイプで繋いでヤーヤーやりたいのが人情というもの。 そういう場合、"system"オプションを使うことでシステム関数(シェルコマンドとか)を利用することが可能です。 実際のところ $ socat -v udp-listen:96960,fork syst…
実際のところ 普通に文字列を渡す $ bash -c "echo 12" 12 $ sh -c "echo 12" 12 ファイルから読んでみる $ cat samplecode.txt echo 134 $ sh -c "`cat samplecode.txt`" 134これは普通のshコマンドつなぎと結果は同じです。 $ sh < samplecode.txt 134 $ c…
参考もと ゲストOSはlocalhost:2222を開けているとします。 ゲストOSのホーム上にある"packet.txt"をホストOSの現在ディレクトリに移動する方法は以下の通り。 $ scp -P 2222 guest@localhost:~/packet.txt ./. guest@localhost's password: packet.txt 100%…
このネタ何度目やねんって話ですが……またぞろうまくいかなかったので、メモ。 実際のところ VirtualBoxの設定 起動していない状態で、インスタンスの設定からネットワークにとび ポートフォワーディングで、ホストIPをローカルホスト、ホストポートを2222と…
odで数バイト分読みをスキップしたい場合は"j"オプションがあります。 あらかじめ全部読んで必要部だけ引っ張るのがシェル流でしょうが、 少しでも不可減らしたいときは結構有効だったり。 実際のところ $ printf "0123" | od -j 0 0000000 030460 031462 00…
Ubuntu18系から、またネットワーク系コマンドがかわりました……。 はじめてRasPiに触れてから3年で3回は手法がかわってる気がするんですが一体なんなんですかね…… で、今のヤングはnetplanというのを使うそうです。 実際のところ 今書いてまs 参考もと netp…
RasPi with Ubuntu Mateな環境でOpenCR環境を作ろうとしたときのこと。 libncurses5がないと言われ、ビルドが止まってしまいました。 これ、32bit系でのビルドの方が普及しているらしく ARM系でやってた私はデフォのaptだと導入できない事態に。 調べて見た…
macOSのSSH越しだとパスフレーズがうまく動きません。 実際のところ というわけで……(?) passphrase-fileをつかって、 $ ssh robot@192.168.0.13 bash <<SHELL > gpg --batch --passphrase-file password.txt --output example99.txt --decrypt testdata.txt.gpg ></shell>…
実際のところ $ echo 123 | gzip -c > 0001.gz $ echo 456 | gzip -c > 0002.gz$ cat 0001.gz 0002.gz > 999.gz$ zmore 999.gz 123 456 公式によると…… GNU Gzip 参考もと linux - Fast Concatenation of Multiple GZip Files - Stack Overflow GNU Gzip
ssh越しにシンプルなコマンドを実行するだけならsudoでもいけます。 実際のところ よくあるのは、poweroffですね。 $ ssh -t robot@robot-desktop.local sudo shutdown -f robot@robot-desktop.local's password: [sudo] password for robot: Shutdown sched…
実際のところ リモート先がIonoPi (Raspberry Pi 3b+ とPLC的につかえるシールドのついたキット)で、bashで (1)接続したledを発火 (2)現在時刻を接続先のログファイルに記録 という場合、以下のようにします。 $ ssh user@remote bash <<SHELL iono led on date > ~/log/action.log SH</shell>…
Ubuntu Mateのパッケージインストール中に事故って電源が落ち、 改めて起動しようとしたところ、以下のようなエラーが…… [ Runtime] Driver 'sdhost-bcm2835' already registered, aborting... 私の場合、パッケージ更新中にこれが発生してしまった事もあっ…
*NIX on Windows な環境で改行コードで泣かされたら、dos2unixをつかうと楽ですWindowsのGit bashには標準添付です。 $ dos2unix.exe 1128.diff dos2unix: 1128.diff MODE 0100644 (regular file) dos2unix: using ./d2utmpidGg2W as temporary file dos2un…
今いるブランチの後ろから二番目にあるハッシュさえあらばいい 7文字なので処理も早い 固定ファイルとしておくには、ポータビリティが宜しくない $ git log --one-lineでお目当てを探したあと、後ろから何番目か抑えておきます。 今回は二番目でした $ git l…
"¥r"を消したいなら、tr -d '\r'で楽ちん。 実際のところ 別に退避させたファイルリストをつかってcpをやろうとしたところ…… "¥rなんか知らんわ" とまるで見に覚えの無いエラーを吐いてこれまで動いていたスクリプトが完全にとまりました ついさっきGit for …
cpコマンドでディレクトリ構造を維持してコピーしたいなら"--parents"オプションです。 実際のところ Gitの変更ファイル群を追加->更新順でソートしてディレクトリ構造ごとファイル名を追加する場合 $ git diff --name-status {{COMMIT_ID}} | sort | cut -f…
UNIX系で環境変数のリストを見たい時は、printenvが使えます 実際のところ 変数を何も指定しなければ、全部表示されます $ printenv TERM_PROGRAM=Apple_Terminal ANDROID_HOME=/Applications//android-sdk-macosx PYENV_ROOT=/Users/shuzo_kino/.anyenv/env…
easy-rsaのcerを作る時"failed to update database TXT_DB error number 2"とか出たら、 commonName*1の値がブッキングしてるなり、不正である可能性があります。念のため、キーの生成プロセスを最初からやれば確実です。 # cd /etc/openvpn/easy-rsa # ./cl…
実にくだらない話だったので、メモ。 実際のところ nginxとuwsgiでサーバーを立て、内部ではチェックできてるのに外から確認できない。 ブラウザには ERR: Connection refused とか出てる。 ほぼ半日潰しました。……何か嫌な予感がして、iptableを調べたとこ…
昔々、わけも分からずRails3でアプリをガチガチ作っていたころのお話。railsを起動する時にオマジナイとして、以下のような感じでnohupを使っていました。 $ nohup rails最近は完全にrailsから離れてますが、このコマンド一体何だったのだろうと思いmanを見…
telnetコマンドは仮想端末に接続する際利用するコマンドです。 なんだかSSHに似てますが、こっちは通信が保護されません。サンプル置き場なり、公開情報置き場に使うのが良さそうです。 実際のところ たとえば、mapscii.meに接続すれば $ telnet mapscii.med…