シェルスクリプト総合 その13
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2008/10/16(木) 00:48:38スクリプトのお勉強・自慢・腕試しなどにどうぞ。
まずは注意点、リンク、地鎮祭など(>>1-6くらい)をご覧ください。
□お約束
・特記なき場合はBourne Shell(/bin/sh)がデフォルトです。
bash/zsh/ksh/ashなどに依存する場合は明示しましょう。
Linuxユーザは/bin/shの正体がbashなので特に注意。
・csh/tcshのシェルスクリプトは推奨されません。
(理由は「csh-whynot」でググれ)
・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。
manや参考リンクを見ましょう。
aproposないしはman -kでそれらしい単語による簡単な検索もできます。
・シェルスクリプトのことをシェルってゆーな
・シェルで使えるワイルドカード等は正規表現ではありません。
正規表現の話題はスレ違い(正規表現スレへ)
□初心者へのアドバイス:
・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも
RubyやPerlの方が適した仕事には素直にそちらを使いましょう。
・知らないコマンドが出てきたらmanを引きましょう。
・思い通りに動かないときは、まずは sh -x でトレースしましょう。
前スレ
シェルスクリプト総合 その12
http://pc11.2ch.net/test/read.cgi/unix/1218277263/
0320名無しさん@お腹いっぱい。
2008/11/29(土) 21:36:27$0に何がセットされるかは、
インタラクティブ環境かどうかとは直接は関係ないという点は理解してますか?
0321名無しさん@お腹いっぱい。
2008/11/29(土) 21:39:32何の脈絡もなしに、突然新しい話題(内定取り消し)が出てくる時は、
心理学的に、本人自身がその話題(内定取り消し)で悩んでいる場合が多い。
319 自身とか、319の息子とかね。
0322名無しさん@お腹いっぱい。
2008/11/29(土) 22:11:230323名無しさん@お腹いっぱい。
2008/11/29(土) 23:02:29シェルスクリプトのスレだろ?
0324名無しさん@お腹いっぱい。
2008/11/30(日) 00:54:430325名無しさん@お腹いっぱい。
2008/11/30(日) 04:27:45インタラクティブなら ps 結果を grep $$ するのも1つの方法
になりえるかなぁとも思ったけど上手くいかない状況もあるかも
あとウチの環境では少なくとも csh の場合はインタラクティブで echo $0 はエラーになる
> 他に方法あるの?
他にとかいう以前に、echo $0 含めそもそも汎用的な方法なんてないんじゃなかろうか?
0326名無しさん@お腹いっぱい。
2008/11/30(日) 08:11:52psの結果を grep $$ するくらいなら
ps -p $$
>>317
インタラクティブ環境の話題はスレ違いだから、
インタラクティブ環境の事は言っていないのだろうと推して知るべし。
0327名無しさん@お腹いっぱい。
2008/11/30(日) 10:59:16もし、そうなら。>>313のような「あたりまえ」の知識を披露せずに、
「スレ違い」と切って捨てればよい。
0328名無しさん@お腹いっぱい。
2008/11/30(日) 11:36:18本当は >>313 が指摘するまで知らなかったんだろ?
後からなら「あたりまえの知識」ということにしてごまかせるわな。
あと、回答者にとって「あたりまえの知識」なのは当たり前。
それを知らない質問者が質問してくるから
あたりまえの知識を回答するのがあたりまえ。
0329名無しさん@お腹いっぱい。
2008/11/30(日) 12:05:520330名無しさん@お腹いっぱい。
2008/11/30(日) 12:08:17そう仮定するなら、>>311は明らかに間違っているわけだが。これをどう説明するのだ? www
実行すらせずに思いつきで書いたとでも? www
0331名無しさん@お腹いっぱい。
2008/11/30(日) 12:09:57純正厨とか変なのが多いぞ。
0332名無しさん@お腹いっぱい。
2008/11/30(日) 12:17:46>>331
俺は汎用性よりも可読性重視だから仕事では自分で一から作るモノは/bin/bashだな。
上の方にでてた四則演算はexprじゃなくてletとか使う。
0333名無しさん@お腹いっぱい。
2008/11/30(日) 12:18:04>>330 NG登録できるように、なるべくコテハンつける。
0334名無しさん@お腹いっぱい。
2008/11/30(日) 12:44:08もっと楽な方法があるってこと?
0335名無しさん@お腹いっぱい。
2008/11/30(日) 12:58:20「反論できねーだろ、>>328」という事。完璧に勝ったな。
0336名無しさん@お腹いっぱい。
2008/11/30(日) 13:40:38突然、SCPとftpでファイル転送するの作ってといわれて途方にくれています。
まずシェルスクリプトのことを学ぶのにどこを見ればいいのか
また上記のことを行うのに参考になるサイトなどありましたらお教えください。
お願いします
0337名無しさん@お腹いっぱい。
2008/11/30(日) 13:53:17shスクリプトについてのサイトは知らないけど
linux ftpでググったらこんなサイトが。
Linux ftpコマンド - kozy.heteml.jp
http://kozy.heteml.jp/pukiwiki/index.php?Linux%20ftp%A5%B3%A5%DE%A5%F3%A5%C9#f424c6b5
あとscpの場合はsshの鍵交換しないとパスワード聞かれるから注意
鍵交換してればscpの方が楽
0338名無しさん@お腹いっぱい。
2008/11/30(日) 13:58:05今後も書く可能性があるのなら、
本買ってひととおり読んだ方が早いよ。
0339名無しさん@お腹いっぱい。
2008/11/30(日) 14:06:02ありがとうございます。
C/C++を大学でやってきた程度で
鯖をFedoraやDebianで本読みながら立てたくらいです。
Shがどんなものか、触りをWEBで確認したくらいで
サンプルコードを色々弄くってみた程度で、まだ全く使い方がわかっていません
SCPでファイル取得して、FTPで他の鯖に転送という、よくわからない要求です
もう少し勉強します。。。
0340名無しさん@お腹いっぱい。
2008/11/30(日) 14:26:18何を主張したいのかわからん。
主張のないものに「反論がない」と言われても、それで >>330 の勝ちにはならない。
>>320 も書いてるが、
$0に何がセットされるかは、インタラクティブ環境かどうかとは直接関係ない。
それを「インタラクティブだから$0にシェルがセットされる」と主張されても
当然間違い。
$SHELLについては、普通にloginすればログイン時にセットされるが、
その後、値を書き換えたり unsetすることもできる。
値を書き換えたり unsetした状態でシェルを起動しても、
$SHELLは改めてはセットされない。
よって、$SHELLではシェルを判定できない。
$shellについてはcsh系の方言だから、B-sh系でセットされていない。
0341名無しさん@お腹いっぱい。
2008/11/30(日) 14:43:230342名無しさん@お腹いっぱい。
2008/11/30(日) 16:32:20ftp, FTP, SCP, Sh
これらの大文字・小文字の区別はいったいなんなんでしょうね。
きもちわるい。
0343名無しさん@お腹いっぱい。
2008/11/30(日) 18:51:09loginがシェルのargv[0]に渡すものは決まっている。
0344名無しさん@お腹いっぱい。
2008/11/30(日) 19:15:14合わせて表示させるにはどうすればよいのでしょうか?
# tree /home
/home
`-- TEST drwxr-xr-x 3 root root 4096 2008-10-26 22:28
|-- AA drwxr-xr-x 3 root root 4096 2008-10-26 22:28
| |-- test.csh -rwxr-xr-x 1 root root 4836 2008-11-30 18:25
| |-- test.csh.org -rwxr-xr-x 1 root root 3416 2008-11-29 23:10
| `-- hoge.sh -rwxr-xr-x 1 root root 1834 2008-11-29 23:24
|
0345名無しさん@お腹いっぱい。
2008/11/30(日) 19:31:26それは「シェルスクリプト」スレに相応しい話題ですか?
0346名無しさん@お腹いっぱい。
2008/11/30(日) 19:41:15login経由でログインするとは限らない。
0347名無しさん@お腹いっぱい。
2008/11/30(日) 19:47:44シェルスクリプトと関係無いから次からはくだ質行ってくれ。
各コマンドの事なら大抵はmanかhelpよめばわかるはず。
# tree --help
usage: tree [-adfgilnpqrstuxACDFNS] [-H baseHREF] [-T title ] [-L level [-R]]
[-P pattern] [-I pattern] [-o filename] [--version] [--help] [--inodes]
[--device] [--noreport] [--nolinks] [--dirsfirst] [--charset charset]
[<directory list>]
(snip)
-p Print the protections for each file.
-u Displays file owner or UID number.
-g Displays file group owner or GID number.
-s Print the size in bytes of each file.
-D Print the date of last modification.
0348名無しさん@お腹いっぱい。
2008/11/30(日) 19:48:17loginは argv[0]の頭に - を付けるが、
環境によっては、頭に - を追加するんじゃなくて、
頭の 1文字を - に置き換える。
だから、(イマドキいないと思うが)cshユーザーの場合、
cshの頭の1文字が - に置き換わって -sh になる。
よって、$0 を見て判別するのも無理がある。
0349名無しさん@お腹いっぱい。
2008/12/01(月) 00:15:26具体的にその「環境」をあきらかにするように。
キミらの脳内環境?
0350名無しさん@お腹いっぱい。
2008/12/01(月) 07:32:44え? 知らないんだw
>>348 が言ってるのは昔からUNIX使ってる人には常識だぞ。
0351名無しさん@お腹いっぱい。
2008/12/01(月) 07:38:02>>346 については、xdmなんかでログインすれば loginは経由しないし、
telnetとかsshの場合もloginは(今は)呼んでいない(自前処理)のはず。
そうじゃなくても、X上でxtermとか開いてもloginは通らないしね。
0352名無しさん@お腹いっぱい。
2008/12/01(月) 07:47:41「あきらかにするように」とか「脳内環境」とか言ってる奴(>>349)に
詳しく教えてやることないよ。
「教えてください」って礼儀正しく言う者にだけ教えればいい。
0353名無しさん@お腹いっぱい。
2008/12/01(月) 08:56:280354名無しさん@お腹いっぱい。
2008/12/01(月) 10:11:19>>346すら理解できないのだろう。
0355名無しさん@お腹いっぱい。
2008/12/01(月) 12:00:03そいつらはloginのように振舞わないのか? ww
0356名無しさん@お腹いっぱい。
2008/12/01(月) 13:32:40> telnetとかsshの場合もloginは(今は)呼んでいない(自前処理)のはず。
嘘つき。telnetは呼んでる。
0357名無しさん@お腹いっぱい。
2008/12/01(月) 14:24:21サポートしてない/サポートしてるけどデフォルトでは使わない実装が多いようだけど。
0358名無しさん@お腹いっぱい。
2008/12/01(月) 14:42:14振舞わないね
0359名無しさん@お腹いっぱい。
2008/12/01(月) 21:26:090360名無しさん@お腹いっぱい。
2008/12/02(火) 01:24:02結局こんな感じだろ?
echo $SHELL これはsh系以外アウト、つまりまったく実用的でない
ps -p $$ 理屈的にまわりくどい
echo $0 理屈的にも納得かつほぼ問題なし
0362名無しさん@お腹いっぱい。
2008/12/02(火) 07:12:02詳しく書くの面倒だけど、
結局のところ >>360 自身も良く理解していない人ということはわかった。
0363名無しさん@お腹いっぱい。
2008/12/02(火) 07:15:34bash
~>echo $SHELL
/bin/bash
0364名無しさん@お腹いっぱい。
2008/12/02(火) 07:20:50そして、echo $SHELLが正しい
0365名無しさん@お腹いっぱい。
2008/12/02(火) 09:27:30例外ないものなんてないし
今のところ他の方法よりはマシに見えるけど
0366名無しさん@お腹いっぱい。
2008/12/02(火) 10:23:41おまえの負け。とっととひっこめ。
0367名無しさん@お腹いっぱい。
2008/12/02(火) 12:10:18/usr/local/bin/zshってかえしてもらわないと
0368名無しさん@お腹いっぱい。
2008/12/02(火) 12:32:400369名無しさん@お腹いっぱい。
2008/12/02(火) 12:59:160370名無しさん@お腹いっぱい。
2008/12/02(火) 15:08:34なぜそうされないのか、大方理由があるもんだ、素人がいきがっても墓穴ほるだけ
echo $0つかえば?wwwwwwwwwwwww
0371名無しさん@お腹いっぱい。
2008/12/02(火) 15:10:35パスなら絶対パス
0372名無しさん@お腹いっぱい。
2008/12/02(火) 15:17:420373名無しさん@お腹いっぱい。
2008/12/02(火) 16:00:430374名無しさん@お腹いっぱい。
2008/12/02(火) 17:27:56軽く流せないとな
0375名無しさん@お腹いっぱい。
2008/12/02(火) 20:37:040376名無しさん@お腹いっぱい。
2008/12/02(火) 21:26:57スルーで。
0377名無しさん@お腹いっぱい。
2008/12/03(水) 01:57:02./scmizu.sh file_list
と起動するとfile_listで定義してあるファイルを削除してくれるツールを作りたいんですが、
今考えてるつくりは、危なっかしい気がしてならないです。
具体的にはどこが危険だかわからないんですが
考慮すべき点を指摘してくれるうれしいです!
file_listの内容
sh-3.2$ cat file_list
/tmp/hage/???
/tmp/hoge/???
/tmp/hoge/hammer.hammer
scmizu.shの内容
#!/bin/sh
# 引数チェック 省略
# 引数のファイルチェック 省略
# 処理
rm -vf `cat $1`
0378名無しさん@お腹いっぱい。
2008/12/03(水) 06:07:500379名無しさん@お腹いっぱい。
2008/12/03(水) 06:10:14for file in `cat $1`
do
rm -r $file
done
0380名無しさん@お腹いっぱい。
2008/12/03(水) 07:12:53別に間違ってはいない。
>>379
そう書き換えても解決にならない。
>>377
ファイルリストの中にスペースを含むものがあると正しく削除されなかったり、
別の(削除してはいけない)ファイルが削除されたりする、というのが問題。
0381名無しさん@お腹いっぱい。
2008/12/03(水) 07:22:14以下のスクリプトを実行してみたのですが、エラーがでました。
---------------------------
$ cat hoge.sh
#!/bin/sh
hoge=
if [ $hoge = 10 ]; then
echo hello
fi
---------------------------
エラーの内容は、
---------------------------
$ ./hoge.sh
[: =: unexpected operator
---------------------------
です。
文法的に問題ないのに、なぜ、エラーになるのかわかりません、、、orz
0382名無しさん@お腹いっぱい。
2008/12/03(水) 07:27:42>>381
hogeの内容が空だから、
if [ = 10 ]; then
となって testコマンドから見るとエラーになる。
if [ "$hoge" = 10 ]; then
とすること。
0383名無しさん@お腹いっぱい。
2008/12/03(水) 08:23:55そのファイルリスト中のファイルの所有者は自分(root?)だけ?
他人所有のディレクトリ内のファイルでそれをやると危険。
0384名無しさん@お腹いっぱい。
2008/12/03(水) 09:46:43(IFS="";
while read x; do
rm -vf "$x"
done < file_list)
0385名無しさん@お腹いっぱい。
2008/12/03(水) 09:48:55\や改行が含まれるパス名がある場合のみですが。
0386名無しさん@お腹いっぱい。
2008/12/03(水) 11:18:08シェルスクリプトは、短く書けるが、後で可読性が悪い。
他人の書いたシェルスクリプトを解読するためには、予め、
言語仕様を幅広く勉強しておく必要がある。
例えば、"$(cat file)" が `cat file`と同じ意味だと分かるのは、
ある種の幸運が必要だ。この手の物は、本やネットでも検索しよう
がないから。
文脈で記号の意味が変動しやすいことも理解を難しくする。
"$variable"は、変数が展開されるが、'$variable'では展開されない。
ならば、`cat $variable` ではどちらか・・・。推測不可能だ。
0387名無しさん@お腹いっぱい。
2008/12/03(水) 11:32:51"$(cat file)" は `cat file`と同じ意味ではない。
よってこの文章読む価値なし
0388名無しさん@お腹いっぱい。
2008/12/03(水) 11:36:13export PATH
↑これもややこしい部分。
左辺では、PATHと書くのに、右辺では$PATHと書く。exportでは、
再び$を書かない書き方。よく考えれば分からないわけでもないが、
同じ変数なのに場所によって変わってしまうのは分かりにくい。
また、=があれば代入だとみなされるらしいが、外部コマンドの
呼び出しと余りにも微妙な差しかない。
また、シェル変数と環境変数の二つに分かれているので、exportが
必用。しかし、どちらも$変数名で参照できてしまう。
そして、シェル変数は小文字、環境変数は大文字なのに、なぜか、
シェル変数にpathがあり、環境変数にはPATHがあったりする。
0389名無しさん@お腹いっぱい。
2008/12/03(水) 11:36:55違いは?
0390名無しさん@お腹いっぱい。
2008/12/03(水) 11:40:50マジで知らないの?
>>386 自体、ネタだと思ったんだけど。他にも突っ込み箇所多数。
>>387
"$(cat file)" と同じなのは "`cat file`"
`cat file` と同じなのは $(cat file)
0391名無しさん@お腹いっぱい。
2008/12/03(水) 11:43:33> PATH = xxxx:$PATH
↑ この代入文自体が間違い。
これ、誰が書いた文章よ?
程度が低過ぎるから、間違い文章貼るのやめてくれるかな
0392名無しさん@お腹いっぱい。
2008/12/03(水) 11:44:26では、つっこみ箇所につっこんでみて。
>"$(cat file)" と同じなのは "`cat file`"
>`cat file` と同じなのは $(cat file)
なるほど。それはそうなんだろうけど、それらの違いは
具体的になんでしょう?
0393名無しさん@お腹いっぱい。
2008/12/03(水) 11:46:32>文脈で記号の意味が変動しやすい
↑
間違い。記号の意味は変動しない。
ただ >>386 が ' ' と ` ` を混同してるだけ。
> `cat $variable` ではどちらか
↑
どちらでもない。
$variable自体はクォートされていないから、
"$variable" でも '$variable' でもなく、
$variable として展開される。
外側の ` ` は、$variableの展開とは別物。
0394名無しさん@お腹いっぱい。
2008/12/03(水) 11:50:56たとえば、
$ echo `cat file`
とやると、fileの中の改行も、2個以上のスペースも、
ひとつのスペースに変換されて、全体が1行になって表示される。
ファイルの中に * とかがあったら、カレントディレクトリのファイル名に展開される。
$ echo "`cat file`"
なら、そのような変換は行なわれず、
ファイルの内容がそのままechoされる。
いずれも、このスレの回答者にとっては常識中の常識だから、
あまりスレのレベルを下げないでくれ。
0395名無しさん@お腹いっぱい。
2008/12/03(水) 11:52:20>>文脈で記号の意味が変動しやすい
>↑
>間違い。記号の意味は変動しない。
いいえ、この主張自体には間違いはない。
例えば、
ダブルクォーテーション中では、「$変数名」は展開されるのに、
シングルクォーテーション中では、「$変数名」は展開されない、
という様な事が、文脈によって「$変数名」の意味が変わっていると
みなせる。
もう一つの例としては、
=の左辺では、単に「変数名」と書くだけで変数名とみなされる
のに、右辺では単なる文字列とみなされてしまう、という事が
ある。これも「文脈」によって、解釈の方法が変わっている事の
例。例えば、C/C++/JavaやBasic言語などではこのような扱いは
ありえない。
0396名無しさん@お腹いっぱい。
2008/12/03(水) 11:52:37> 【シェルスクリプトについて】
最低限の言語習得も怠ったうすら馬鹿の書いた文章。
0397名無しさん@お腹いっぱい。
2008/12/03(水) 11:53:53間違い箇所は?
=の前後にスペースがあること?
0398名無しさん@お腹いっぱい。
2008/12/03(水) 11:55:23たった2000行しかないマニュアル(man)読めば書いてることだよ。
お前馬鹿だろ。
0399名無しさん@お腹いっぱい。
2008/12/03(水) 11:56:09それだと、fileの中の /tmp/hoge/??? というファイル指定が
文字通り ??? というファイルを指定してしまいます。
(3文字名のファイルを指定したい)
0400名無しさん@お腹いっぱい。
2008/12/03(水) 12:03:190401名無しさん@お腹いっぱい。
2008/12/03(水) 12:09:08>ダブルクォーテーション中では、「$変数名」は展開されるのに、
>シングルクォーテーション中では、「$変数名」は展開されない、
↑
その意味で言うならC言語でも同じことだろ。
C言語で、
「!var」は変数varの否定演算になるが、
「"!var"」は、単なる文字列になる。
ダブルクォーテーションがあるかどうかで、「!」という記号の意味が
「変動」してるなw
あと、C言語で、
"A" と 'A' の意味も違うしな。
0402名無しさん@お腹いっぱい。
2008/12/03(水) 12:10:38それだと、スペース入りファイル名の問題が再発します。
0403名無しさん@お腹いっぱい。
2008/12/03(水) 12:15:50> =の左辺では、単に「変数名」と書くだけで変数名とみなされる
> のに、右辺では単なる文字列とみなされてしまう、
Cでも、左辺値と右辺値は区別されている。左辺値になれない式が存在する。
Cでも文脈によって意味が変わるということだ。
0404名無しさん@お腹いっぱい。
2008/12/03(水) 12:18:43「文脈で変動している」
と言っても、コンピュータにはとっては筋が通っており、解析自体が
不可能なわけではない。
しかし、問題は、そのような例外が多くあると、シェルスクリプトの
初心者が他人のスクリプトを見た時に混乱しやすいことと、意味を調べ
たくても、検索し辛いことにある。
・「(英)単語」であれば検索しやすいが、記号だとしづらい。
・文脈依存性が強いと、調査に時間がかかる。
0405名無しさん@お腹いっぱい。
2008/12/03(水) 12:20:36変動はしているが、x に x + 1 を代入したい時は素直に、
x = x + 1;
と書けばよい。一方、シェルスクリプトでは、複雑なことになる。
evalやらを使うんだと思うが。
0406名無しさん@お腹いっぱい。
2008/12/03(水) 12:25:050407名無しさん@お腹いっぱい。
2008/12/03(水) 12:28:30もともとシェルはコマンド実行ユーティリティだから
普通のプログラム言語っぽく使えるだけて満足だがなあ
つ−か、書き方によってはサブシェルになる方が問題かと
0408名無しさん@お腹いっぱい。
2008/12/03(水) 12:28:47> evalやらを使うんだと思うが
↑
ハイハイ、あなたの理解度はその程度ですねw
evalは使いません。勉強してから出直してね。
0409名無しさん@お腹いっぱい。
2008/12/03(水) 12:30:28bash限定でいいなら、
((x = x + 1))
って素直に書けるよ。
さらに、
((x++))
という書き方もできる。
0410名無しさん@お腹いっぱい。
2008/12/03(水) 12:33:52別に自慢のために書いているんじゃなく、シェルスクリプトの問題点を
考えたいと思っているだけなのに。
0411名無しさん@お腹いっぱい。
2008/12/03(水) 12:36:490412名無しさん@お腹いっぱい。
2008/12/03(水) 12:37:36> しかし、問題は、そのような例外が多くあると、シェルスクリプトの
> 初心者が他人のスクリプトを見た時に混乱しやすいこと
↑
自分が理解できていないことを「例外」ということにしたいのですね、わかります
0413名無しさん@お腹いっぱい。
2008/12/03(水) 12:37:490414名無しさん@お腹いっぱい。
2008/12/03(水) 12:41:33勉強不足であろうがなかろうが、言語に問題があるかどうかが
議論したかったのに。
0415名無しさん@お腹いっぱい。
2008/12/03(水) 12:50:40そういうことを本気で議論したいなら、
まずは一通りでもその言語(シェルスクリプト)を習得してからじゃないと。
(批判しているつもりが、勉強不足のせいで批判ポイントがずれているしね)
>>386 のような間違いだらけの文章を書いたのでは、
どこに行っても誰にも相手にしてもらえないよ。
0416名無しさん@お腹いっぱい。
2008/12/03(水) 13:04:01$(cat file) と "$(cat file)"
の違いだけじゃん。
0417名無しさん@お腹いっぱい。
2008/12/03(水) 13:20:13面倒だから、間違い箇所を挙げるだけにするよ。
(1)まず、
>"$(cat file)" が `cat file`
(2)
>本やネットでも検索しようがないから。
本の索引で記号は検索できる。
あと、man sh (man bash) でも lessで検索できる。
(3)
>文脈で記号の意味が変動
しない
(4)
>ならば、`cat $variable` ではどちらか
そもそも、' 'と ` ` の意味を理解していない。
「どちらか」という問い自体が間違い
(5)
>推測不可能だ
マニュアルに載ってる。推測なんて不要。
0418名無しさん@お腹いっぱい。
2008/12/03(水) 13:20:46>PATH = xxxx:$PATH
スペースを入れちゃ駄目
(7)
> =があれば代入だとみなされる
というわけでもない
(8)
>シェル変数は小文字、環境変数は大文字
とは限らない
(9)
>シェル変数にpathがあり
そんなものない
ざっと挙げても9箇所間違い。もっと細かく見ればもっと間違いが出てくるだろう。
0419名無しさん@お腹いっぱい。
2008/12/03(水) 13:23:16■ このスレッドは過去ログ倉庫に格納されています