トップページunix
1001コメント272KB

くだらない質問はここに書き込め!なんでもアリ33

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
UNIX板は、2chのサポートセンターではありません。
批判、要望は以下へ。
2ch批判要望 http://qb.2ch.net/accuse/

NGワード
* UNIXって何? (http://pc3.2ch.net/test/read.cgi/unix/998779290/)
* UNIXとLinuxの違いは何? (http://pc3.2ch.net/test/read.cgi/unix/1024558135/)
* 2ch閉鎖の危機をUNIX板が救ったという話{は本当? | を知った。有り難う! | のflashはどこ?}

禁止事項
* 既出・内容なし・マルチポスト・アスキーアート各種・ネタage・宿題の丸投げ

注意事項
* 荒らしは無視が鉄則
* Unixと関係ない質問/話題は、よけいな相手をせず適切な板に誘導。
* シュッ・シュッ

書く前にぐぐれ http://www.google.co.jp/
2ch総合検索サイト http://2ch.dyn.to/

過去ログなどは >>2-5
0449名無しさん@お腹いっぱい。NGNG
mail -s "Cron <root@`echo $HOST`> $0" < $TODAYLOG root

これは自分が書いたあるシェルスクリプトの 1 行なんですが
この行で、root@hostname というのを表示したくて上のように
書きました。しかし、実際送られてくる Subject は

Cron <root@> /hoge.sh

と $HOST が表示されません。root の crontab に登録して
実行しているのですが、何か対処方法はあるのでしょうか?
0450名無しさん@お腹いっぱい。NGNG
$HOSTNAME でどうよ。
0451名無しさん@お腹いっぱい。NGNG
あるいは`hostname`か。
0452座敷荒氏NGNG
>>441
じつは正確にはUNIXからの操作ではないのです。

Windowsのパソコンが2つあるので、
PC-1からの操作でPC-2にあるバッチファイルを
実行したい(PC-2上で走行できればいい)のです。

↓このツールでWin上でC シェルを動かせるからできるかなぁっと・・

http://www.microsoft.com/japan/windows/sfu/
0453名無しさん@お腹いっぱい。NGNG
みんなはFreeBSDの/usr/ports以下にあるソフトが何をするソフトかどうやって知ってるの?
ソフト名しか書いてなくて自分には何に使うものなのかサパーリわからないんですが。
0454438NGNG
>452
だからさっき板違い言うたやん!
釣られた俺はいったい… _| ̄|○
0455名無しさん@お腹いっぱい。NGNG
>>453
pkg-descrに書いてある
0456438NGNG
>452
SFUの話か…。リンク見てなかった。スマン。
つーか情報を小出しするなヨ。
一番いいたい事を先にって習っ(ry
で、ssh,rsh,telnetとかでできるんでない?
それか、アパーチとか。

0457名無しさん@お腹いっぱい。NGNG
>>452
キックしたいとか言ってたのは実行したいってこと?
ってか、おまいはいったい何がしたいんだ?
0458座敷荒氏NGNG
>>438
ありがとう。明日やってみるよ。
SFUってわかるんだ・・・すごいなぁ
おいら今日初めて知ったのよ。

では、おやすみなさい。
0459座敷荒氏NGNG
>>457
そそ。Windows(実際には452のとおりなんでPC-2)上にある
バッチファイルをリモートから実行したいなり。
0460名無しさん@お腹いっぱい。NGNG
キックって言葉は普通に使うけど
0461438NGNG
「キック=実行、叩く、ける、物事を始めさせる。」
いろんな分野で頻繁に使われる言葉です。
物理、数学、コンピュータ、プロレス、サッカー、喧嘩…

0462座敷荒氏NGNG
>>461
最後わらったw
またくだらない質問するので教えてくださいね♪
0463名無しさん@お腹いっぱい。NGNG
kick out とか kick off とかでないと「始める」って意味では
あんまり使わないんではないかね
0464名無しさん@お腹いっぱい。NGNG
まぁ人に物事を伝えるときは出来るだけ相手に解釈させる
必要がない言葉を選択しましょう、ってこった
0465名無しさん@お腹いっぱい。NGNG
内容と名前欄がアレなのにあえてマジレスなのは新手のプレイなのでしょうか。
0466名無しさん@お腹いっぱい。NGNG
キックって仕事でバッチ動かすときも普通に使うけどな
業界では普通に使うんじゃないか
0467名無しさん@お腹いっぱい。NGNG
うちではキックとは言わないかな。
「実行する。」がほとんど。
バッチのようなスクリプトでもコマンドでもcronでも。
「起動する」がたまに聞かれるぐらい。
0468名無しさん@お腹いっぱい。NGNG
使わないにしても「キックする」って言われりゃ普通は分かるんでない?
0469名無しさん@お腹いっぱい。NGNG
"叩く"という意味で"キックする"というのはわかる希ガスr
0470名無しさん@お腹いっぱい。NGNG
うちじゃ主には弾くって意味で使うな。
最初、437を見てtest.batをアクセスさせない方法を聞いてるのかと思た。
0471名無しさん@お腹いっぱい。NGNG
/etc/inetd.confを編集して再起動したら
SFUでrloginしてWindows上のバッチファイルを実行できた!
ただrloginするときにユーザー名とパスワードを聞かれるのが
面倒なので聞かれないでログインしたいのですがどうしたらいいのでしょう?
どうやら/etc/hostsファイルが関係あるような・・
でも書式がわからないのです(TT)
0472名無しさん@お腹いっぱい。NGNG
rhostsじゃなかったけって思ったら出てきた。
ttp://x68000.startshop.co.jp/~68user/unix/pickup?%7E%2F%2Erhosts
0473名無しさん@お腹いっぱい。NGNG
ま、人間が実行するときは「キックする」とはあまり言わん罠。
コマンドが別のコマンドを「キックする」とかは良く言うが。
0474名無しさん@お腹いっぱい。NGNG
高速道路での玉突き衝突事故みたいなイメージか
0475名無しさん@お腹いっぱい。NGNG
>>445したらどうなるの?
0476名無しさん@お腹いっぱい。NGNG
>>444
0477名無しさん@お腹いっぱい。NGNG
>>476
途中に bash が入っているのがなんとも。
0478名無しさん@お腹いっぱい。NGNG
>>451
でけた。ありがとう。
0479名無しさん@お腹いっぱい。NGNG
errataとsecurityってどう違うんですか?
0480名無しさん@お腹いっぱい。NGNG
http://dictionary.goo.ne.jp/search.php?MT=errata&ej.x=0&ej.y=0&kind=&mode=0
http://dictionary.goo.ne.jp/search.php?MT=security&ej.x=0&ej.y=0&kind=&mode=0
0481名無しさん@お腹いっぱい。NGNG
Solaris と SUN OS って何が違うんですか?

Solaris->ハードウェア名
SUN OS->OS名?

どっかにOSはSolaris(SUN OS)とか
書いてあって分からなくなりますた。
0482名無しさん@お腹いっぱい。NGNG
>>481
何度も出てるな。
Solaris スレで銃タンに教えてもらってこい。
0483名無しさん@お腹いっぱい。NGNG
今年新卒の私は3つ上の先輩に
 Solaris→OS
 SunOS→カーネル
って習いました。でもなんか違う気がしてる…。
テスト仕様書にはSolarisって書いてあるんだけど
unameするとSunOSって出る。
忘れようとしてたけど、また気になって寝れない。
0484483NGNG
>482
すいません。スレ違いの質問に釣られてしまいました。
0485名無しさん@お腹いっぱい。NGNG
1〜100までの素数をリストアップするcshのシェルスクリプト教えてください。
0486名無しさん@お腹いっぱい。NGNG
C で書け。
0487名無しさん@お腹いっぱい。NGNG
#include<stdio.h>
int main(void){
int i, j, prime;
for(i=2; i<100; i++){
prime=1;
for(j=2; j<=i/2; j++)
if(!(i%j))prime=0;
if (prime)printf("%dは素数\n", i);
}
return 0;
}
0488名無しさん@お腹いっぱい。NGNG
マウスを別のターミナルまで移動すれば、そのターミナルが
アクティブになるよね?つまり、別のターミナルを使うために
マウスをいじったわけだが、これをマウスを使うのではなく、
キーボードの操作からやるにはどうすればいいのかな?
0489488NGNG
説明が足りなかったね。
#kterm &
とコマンドをうつんじゃなくて、もともと複数のターミナルが
存在していて、一方のターミナルからもう一方のターミナルを
使用するとき、という意味。
0490名無しさん@お腹いっぱい。NGNG
>>489
使ってるwmのman見れ
0491名無しさん@お腹いっぱい。NGNG
>>485
1から100までの素数がかかれているファイルを使うのは反則でつか?
0492 ◆5c5udzFPUI NGNG
確かよ。デーモン君のイカした壁紙提供してるジャパニーズがいたよな。
俺、お気に入りに入れていたんだけどこないだのサッサー騒動でクリーン
インストールしたからわからなくなっちゃったんだよ。
もう一度教えてくれ!!
0493名無しさん@お腹いっぱい。NGNG
×イカした
○イカれた
0494名無しさん@お腹いっぱい。NGNG
Solarisの/bin/shにはletがなかった。
...要するに暇なんです。
#!/bin/sh
isPrime() {
n=${1};
odd=`echo ${n} % 2 | bc`;
if [ ${odd} -eq 0 ]; then return 0; fi
i=3; flag=0;
while [ `expr ${i} \* ${i}` -le ${n} ]; do
tmp=`echo ${n} % ${i} | bc`;
if [ ${tmp} -eq 0 ]; then flag=1; break 1; fi
i=`expr ${i} + 2`;
done
if [ ${flag} -eq 1 ]; then return 0; else return 1; fi
}
while :; do
TMP="/tmp/hoge";
dialog --title "素数のなにか" \
--clear --inputbox "number (0 to exit)" -1 -1 2>| /tmp/hoge

if [ -f ${TMP} ]; then num=`cat ${TMP}`; rm -f ${TMP};
else echo "error"; exit 0; fi

if [ -z ${num} ] || [ ${num} -lt 1 ]; then exit 0;
else isPrime ${num}; res=$?; fi

if [ ${res} -eq 1 ]; then dialog --clear --msgbox \
"ひょっとすると${num}は素数のような気がするかもしれません!!" -1 -1;
else echo "false"; sleep 1; fi
done
0495名無しさん@お腹いっぱい。NGNG
csh じゃないじゃん
0496名無しさん@お腹いっぱい。NGNG
禁止事項:宿題の丸投げ
0497名無しさん@お腹いっぱい。NGNG
#!/bin/sh

cat <<EOF | gcc -xc - -o /tmp/prime.$$ && /tmp/prime.$$ && rm -f /tmp/prime.$$
#include<stdio.h>

int main(void){
int i, j, prime;
for(i=2; i<100; i++){
prime=1;
for(j=2; j<=i/2; j++)
if(!(i%j))prime=0;
if (prime)printf("%dは素数\n", i);
}
return 0;
}
EOF
0498名無しさん@お腹いっぱい。NGNG
>>495-496
だから正答を書かないように苦労してるんじゃないか。
0499名無しさん@お腹いっぱい。NGNG
>>497 ありがとうございます。
      助かります。
 
>>496 シェルスクリプト 教えてくれる掲示板ってご存知ですか?
0500名無しさん@お腹いっぱい。NGNG
499はありがとうございますといっているところをみると
497がcshのスクリプトだと思っているのだろうか
0501497NGNG
>>499
( ゚д゚)ポカーン
0502名無しさん@お腹いっぱい。NGNG
わらた
0503名無しさん@お腹いっぱい。NGNG
お前らイイ!

イイヨー!!
0504名無しさん@お腹いっぱい。NGNG
正解はこれ

#!/bin/csh
primes 1 100
0505名無しさん@お腹いっぱい。NGNG
Emacs ??????????Emacs ???????????????
????????????DOS???????????????
0506名無しさん@お腹いっぱい。NGNG
文字化け?
0507エスパーNGNG
>>505
Demacs
0508名無しさん@お腹いっぱい。NGNG
>>505
mifes
0509名無しさん@お腹いっぱい。NGNG
すみません。Emacs に関しての質問です。Emacsで下の方に
ファイルネームが表示されますが、その左に
-u:--
とある時と
--(DOS)--
とある時があります。これはどう違うのでしょうか。
0510名無しさん@お腹いっぱい。NGNG
改行コード
0511名無しさん@お腹いっぱい。NGNG
510さん

もうちょっと詳しく教えて頂けたら嬉しいです。お願いします。
0512510NGNG
emacs使ってないんでよく知らんが多分改行コードが
0x0d 0x0a だと DOS って出るんじゃないの?
バイナリエディタとかでみてみ
0513名無しさん@お腹いっぱい。NGNG
510さん

早速のお返事どうもありがとうございました。エディタはEmacs しか
使った事がなかったのですが、とりあえずバイナリエディタを探してみます。
改行コードについても調べてみます。
0514名無しさん@お腹いっぱい。NGNG
513はバイナリエディタを普通のエディタの一種だと思ってる





間違いない
0515名無しさん@お腹いっぱい。NGNG
禿丸エディタとかの仲間みたいなもんか
0516名無しさん@お腹いっぱい。NGNG
 │  ヽ( ,_ノ`)ノ 私のバイナリエディタを進呈しよう (下半身略
0517名無しさん@お腹いっぱい。NGNG
>>513
hd -C file
0518名無しさん@お腹いっぱい。NGNG
(´-`).。oO(M-x hexl-find-file...)
0519名無しさん@お腹いっぱい。NGNG
ところでお舞いら、どんな方法でドットファイルのバックアップを行っておりますか。

-----
#!/bin/bash


BACKUPLIST=".Xmodmap .Xresources .bashrc .canna .emacs .emacs-w3m .ircrc .mlclockrc .mlterm .ratpoisonrc .screenrc .xsession elisp .vimrc"

cp -uvr $HOME/${BACKUPLIST} .
-----

rsyncつかうほど大きなファイルもないので、こんなことしていますが、このスクリプトに、汚い表現、バグなどあったら教えていただけるとありがたいでつ。

それとも、やっぱりrsync使った方がいいのでしょうか。

単に、tar czvf `date +%y+%m+d`.tgz ${BACKUPLIST}したほうがよいかな。


0520519NGNG
tarコマンドが間違っているから、自分で直さんと
0521名無しさん@お腹いっぱい。NGNG
>>519
すなおに .?*じゃだめなのか?
0522519NGNG
もしかして>>519のスクリプト使えない?さっきは使えたような気がしたけど、よくみたら使えるはずがない。

わけわかめ。たすけt。
for f in $BACKUPLIST;do
cp -uvr $HOME/$f .;
done

でいいの?
0523名無しさん@お腹いっぱい。NGNG
subversion 使ってる。少し前は cvs だた。
0524519NGNG
>>521
ドットファイル以外も含む予定なんで。elispは.elispに改名すればいいけど。
0525522NGNG
for文だと効率わるい?

いちいち
cp foo .
cp bar .

よりもcp foo bar .のほうがいいとは思うんだが。
BACKUPLISTを、foo,barにすると見にくい。
いちいち
foo,\
bar,にするのもながったらしい。どうすべきか。
0526名無しさん@お腹いっぱい。NGNG
>>525
効率を気にするほどのファイル数なの?
つーか別にそこがボトルネックにはならんだろ
0527名無しさん@お腹いっぱい。NGNG
ヒアドキュメントとかじゃダメなのか?
0528522NGNG
>>526
いや別に効率を気にする程ではないけど、効率の酔い方法を覚えた方がいいかなぁと思って。
で、こんどは

変数にfoo,barをいれたところで、それを展開する方法が、さっきはわかったのにいまはわからなくなった。

HOGE="a,b"
echo $HOME/${HOGE}

さっきはこれでちゃんと
/home/hoge/a
/home/hoge/b
とでたはずなのに。でも逝けない。どこがさっきと違うんだろう。


0529522NGNG
>>527
ども。いま調べてみます。
0530名無しさん@お腹いっぱい。NGNG
>>528
むしろそれで逝けたら驚く. そんなシェルがあるのか?
素直にforでまわしとけ. ',' じゃなく' 'でくぎるんだぞ, '\n'でもいいけど.
0531519NGNG
>>528
うん。でもさっきはそれで逝けたような気がした。混乱して記憶が断片化したんだな。どうも。寝る。
for使わない方法で誰か知っていたら教えて下さい。
0532522NGNG
$ cp -uvr `echo $BACKUPLIST | sed "s:^: :g;s: : $HOME/:g" ` .


これって…汚すぎるかな。汚すぎるね。正規表現よくわかっていないもんね。
0533名無しさん@お腹いっぱい。NGNG
echo $HOME/${HOGE}
echo $HOME/{$HOGE}
の違い
0534530NGNG
>>533
それができるシェルって何? zsh?
手元の bash じゃできない.
0535名無しさん@お腹いっぱい。NGNG
手元のbashじゃできる。 2.05b
cshでは確実に出来るはず。

というわけで驚いて下さい >>530
0536名無しさん@お腹いっぱい。NGNG
擬似電卓プログラムの作成(awkプログラミング)

整数の2項演算(plus, minus, multiply, divide)を 対象として,
例えば,2+3などの文字列を受け取り,
その場で計算して答え(この場合は5)を表示する。
0537エスパーNGNG
>>1
> 禁止事項
> * 既出・内容なし・マルチポスト・アスキーアート各種・ネタage・宿題の丸投げ
0538名無しさん@お腹いっぱい。NGNG
awk '{system("echo " $0 "| bc") }'

これで○もらえたら嫌だな…。
0539名無しさん@お腹いっぱい。NGNG
>>533
$ HOGE=".bashrc,.emacs"
$ echo $HOME/{$HOGE}
/home/unko/{.bashrc,.emacs}
$ cp $HOME/{$HOGE} .
cp: cannot stat `/home/unko/{.bashrc,.emacs}': そのようなファイルやディレクトリはありません

ということで、できません。
0540名無しさん@お腹いっぱい。NGNG
>>536
#shutdown -p now

real:
dash to caliculator;
0541名無しさん@お腹いっぱい。NGNG
>>538
はたからなんだけど
bc丸投げでワロタ
0542名無しさん@お腹いっぱい。NGNG
* 丸投げには丸投げで対処
0543522NGNG
結局これが一番シンプルだろうか。
$ (cd;cp -uvr $BACKUPLIST $OLDPWD)

0544名無しさん@お腹いっぱい。NGNG
>>536
% cat calc.awk
#!/usr/bin/awk -f
BEGIN {
 for (n = 0; n < 256; n++)
  chr[sprintf("%c", n)] = n
}
{
 gsub(/ +/, "", $0)
 system("w3m -dump http://www.google.com/search?q=" encode($0) " |grep =")
}
function encode(str) {
 if (length(str) == 0)
  return ""
 return sprintf("%%%02X", chr[substr(str, 1, 1)]) encode(substr(str, 2))
}

% ./calc.awk
1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9
[calc_img] 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 = 45
exp(4atan(1)sqrt(-1))
[calc_img] exp(4 atan(1) * sqrt(-1)) = -1
0545名無しさん@お腹いっぱい。NGNG
>>539
ま、メタキャラクタはシェルが解釈し、展開してからコマンドに渡すわけで。
0546名無しさん@お腹いっぱい。NGNG
>>545
この場合は展開の順番が重要ってこと。
0547名無しさん@お腹いっぱい。NGNG
引数に取ったファイルの絶対 path を出力するコマンドは、ありますか?
man で調べたら realpath と言うのがありましたが、
自前のコマンドでは問題有りなので。
0548名無しさん@お腹いっぱい。NGNG
>>547
#include <stdio.h>
#include <stdlib.h>
#include <sys/param.h>
#include <unistd.h>

int main(int argc, char **argv)
{
  char resolve_path[MAXPATHLEN];
  if (argc != 2) {
    fprintf(stderr, "usage: %s: path\n", argv[0]);
    exit(1);
  }
  if (realpath(argv[1], resolve_path) == NULL) {
    perror(resolve_path);
    exit(1);
  }
  puts(resolve_path);
  return 0;
}
■ このスレッドは過去ログ倉庫に格納されています