|
>>4491 68user >わたしにもさっぱりわかりませんが、以下の URL はチェック済ですか? > http://www.openssl.org/docs/crypto/dh.html > http://matagi.sakura.ne.jp/mt/archives/2005/03/openssldh.html お返事ありがとうございます。 DH法用の関数はこれなんですね。 お教え頂いた情報を参考に、更に調べてまいります。 |
|
シェルスクリプトで、 ファイルからフィールド1を読み込み、前後にシングルクォーテーション「'」を 付けて、区切りの1行にしたいのですが、「'」を上手く付けることができません。 「'」の使い方が不正とかで怒られます。 #!/bin/csh nawk -F"," ' { \ if (FNR==1) printf("\'%s\'", $1); \ else printf(",\'%s\'", $1) \ }' file.txt 一度、ダブルクォーテーション「"」にしてからsedで置換しよとしたのですが、 sedでも「'」の使い方が不正とかで怒られます。 nawk -F"," ' { \\ if (FNR==1) printf("\"%s\"", $1); \\ else printf(",\"%s\"", $1) \\ }' file.txt | sed 's/"/\'/g' または、 set a = `nawk -F"," ' { \\ if (FNR==1) printf("\"%s\"", $1); \\ else printf(",\"%s\"", $1) \\ }' file.txt` echo $a | sed 's/"/\'/g' どのようにすればよいのですか。 OSは、Solairs8 |
|
>>4493 お 参照するファイルについて書いていませんでした。 # cat file.txt Tokyo, Oosaka, Nagoya, Kyoto, Kyusyu, |
|
>>4493 お csh は馬鹿なので、シングルクォートの中にシングルクォートを書くことはできません。 つまり、 echo '\'' はエラーです (sh も同様)。同様に echo "\"" もエラーになります (sh ならこっちは OK)。 で、csh には (sh も) echo "文字列1""文字列2""文字列3" echo "文字列1"文字列2"文字列3" echo '文字列1''文字列2''文字列3' echo '文字列1'文字列2'文字列3' のいずれも、 echo "文字列1文字列2文字列3" と (基本的には) 同じ、という性質があります。 よって、csh で 'abcdef' を出力したい場合は、 echo "'"abcdef"'" echo "'""abcdef""'" などとします。 シェルのクォートは「ネストさせない」が鉄則です。 |
|
>> 4495 無理なのですか。 一度、ファイルから取得したものループでechoコマンドを 使いながら編集するということですね。 #!/bin/csh set ALL="Tokyo Oosaka Nagoya Kyoto" @ i = 1 foreach EACH ($ALL) if ($i == 1) then set ALLS=`echo "'"$EACH"'"` else set ALLS=`echo $ALLS",'"$EACH"'"` endif @ i++ end echo $ALLS |
|
>>4496 お 確認していませんが、awk のプログラム部分を別ファイルにして -f オプションで指定しても出来ると思います。 (この場合はシングルクォートのエスケープは不要です。) |
|
>>4496 お > 無理なのですか。 いいえ。 awk -F"," '{if (FNR==1){printf "'"'"'%s'"'"'",$1}else{printf ",'"'"'%s'"'"'",$1}}'<file.txt |
|
>>4497 zsh >>4498 68user zshさん、68userさん ありがとうございます。 出来ました。 「'」を「"」で囲って連続して付けることは試してはいたのですが、 私が試していたのとは違っていました。 それよりも、「'%s'」とするのには気が付きませんでした。 常に「"%s"」としていました。 ただ、 awkで行うと、 ,'Tokyo','Oosaka','Nagoya','Kyoto','Kyusyu' と1行目に読み込んだものにもカンマ「,」がついてしまします。 nawkで行うと 'Tokyo','Oosaka','Nagoya','Kyoto','Kyusyu' となります。 何が違いとかあるのでしょうか。 |