1 名前:login:Penguin [2010/02/03(水) 11:28:32 ID:zlX7jwnX] まずは2ch-Linux-Beginnersを読みましょう。 いろいろとまとめられているので(・∀・)イイ!! www12.atwiki.jp/linux2ch/ (避難所) 読んでも解決しなかったら、質問を書きこむ前にここを読もう。 www12.atwiki.jp/linux2ch/?About 過去ログ検索(Part29: 22氏提供) 2chlinux.dtdns.net/2ch-linux-ks/ Google検索 www.google.co.jp/linux 関連スレッドは >>2-4 あたり。 前スレ くだらねえ質問はここに書き込め! Part 180 pc11.2ch.net/test/read.cgi/linux/1261598308/ 2chlinux.dtdns.net/2ch-linux-ks/thread/1261598308.html
268 名前:login:Penguin [2010/02/12(金) 12:35:19 ID:t0/ouG5r] >>267 shar とかそういう話?
269 名前:login:Penguin mailto:sage [2010/02/12(金) 15:46:22 ID:K/OdXXCf] 0x00だけが消えてしまうなら、適当にエスケープしてやればいいんじゃないかな zescape() { sed -e "s/a/a0/g; s/b/a1/g" | tr "\0" "b"; } zunescape() { tr "b" "\0" | sed -e "s/a1/b/g;s/a0/a/g"; } gz=$(zescape <binary_file) echo -n "$gz" | zunescape >binary_file2 テキスト化はこんなのでどうかな xxd -p -c16 <binary_file | sed -e 's/../\\x&/g;s/^/echo -ne "/;s/$/"/'
270 名前:login:Penguin mailto:sage [2010/02/12(金) 17:56:58 ID:K/OdXXCf] こっちの方がいいかな decode() { sed -e 's/../\\x&/g' | while read -r line; do echo -ne $line; done; } decode >foo.tar.gz <<END # ここにxxd -p foo.tar.gzの結果を貼り付ける END
271 名前:login:Penguin [2010/02/12(金) 20:11:07 ID:IOHPPzhy] ファームを書き込んで /usr とか作れてるのであれば 自作スクリプトや tar.gz も一緒に書いちゃうのは?
272 名前:login:Penguin [2010/02/12(金) 20:31:34 ID:IOHPPzhy] > /bin /sbin /usr/bin /usr/sbinを見る限り > テキスト化してくれるプログラムはないようです(uuencodeとかxxencodeとかbase64など) ソース眺めてみたけどbusybox使ってるのね。 TomatoSource_1_27/tomato/release/src/router/busybox/.config の # CONFIG_UUDECODE is not set # CONFIG_UUENCODE is not set この辺とかあと自分に必要そうなもの有効にしてビルドし直したら楽になるんでないかい。
273 名前:login:Penguin [2010/02/12(金) 21:12:16 ID:IOHPPzhy] # CONFIG_HEXDUMP is not set # CONFIG_FEATURE_HEXDUMP_REVERSE is not set ttp://www.mail-archive.com/busybox@busybox.net/msg02450.html 使えそう >>270 様 echo って、8進数しか扱えなくです?
274 名前:login:Penguin mailto:sage [2010/02/12(金) 21:30:38 ID:xC1ZkLZ7] >>270 でも>>266 でもないけど1.16.0で試したら使えた user@host:~/busybox-1.16.0$ ./sh $ ./sh $ ./echo -ne '\x00' | od -t x1 0000000 00 0000001 $
275 名前:login:Penguin mailto:sage [2010/02/12(金) 21:56:01 ID:K/OdXXCf] POSIXの仕様によると\xNNどころかecho -eも非標準... printf "\100"みたいなやり方が移植性があるらしいね
276 名前:login:Penguin mailto:sage [2010/02/12(金) 22:33:39 ID:ECgMHVuV] CodecSysCE-10 みたいなソフトでLinux対応の無料ソフト知らないですか??
277 名前:login:Penguin mailto:sage [2010/02/12(金) 23:14:27 ID:qEuy2DxN] >>276 ffmpeg
278 名前:login:Penguin mailto:sage [2010/02/13(土) 00:17:36 ID:kE75E2ms] ヒアドキュメントのリダイレクトってどうやるのでしょうか? 例えば↓のようにやっても、標準・標準エラーともに出力されません。 echo << EOF > fuga hoge EOF ↓のように関数とかを作れば大丈夫ですが、ちょっとかっこわるいですね。 kansuu(){ echo << EOF hoge EOF } kansuu > fuga どういう仕組みでこうなるんでしょうか?
279 名前:login:Penguin mailto:sage [2010/02/13(土) 00:21:04 ID:pv/j8EoN] >>278 s/echo/cat/
280 名前:278 mailto:sage [2010/02/13(土) 00:56:16 ID:kE75E2ms] >>279 ありがとうございます。ただ、ちょっと混乱してきました。 ヒアドキュメントは標準入力の肩代わりですよね? よく考えるとこれが何故echoに対して使えるのか分からなくなってきました。 echoは引数を標準出力に出すのであって、標準入力を読んでいるわけ ではない、ということになりませんか?一体どういう仕組みなんでしょうか?
281 名前:login:Penguin mailto:sage [2010/02/13(土) 01:17:09 ID:hGmMD9kY] >>279 様は echoでは使えない catで使え とおっしゃっている 仕組みは コマンド <<単語 が出たらその次の行から単語が見つかるまでの内容がそのコマンドの 標準入力として使用される、というもの。 例えば cat << EOF >fuga hoge EOF なら cat >fuga を実行することになり、そのときに hoge[改行] という内容のファイルがリダイレクト入力されるのと同じになる うーん、俺説明苦手