The UNIX and Linux Forums  
Helloやアメリカ合衆国へようこそ! UNIXおよびLinuxフォーラム!訪問し、当社のグローバルコミュニティに参加いただきありがとうございます。

Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > シェルプログラミングとスクリプティング
Googleのunix.com



シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
このコマンドは、固定長ファイルのレコード長は何を確認するには? tranq01 UNIXのダミー質問と回答のため 9 2008年12月4日 04:04午後
Debianの:新yarssrパッケージは、任意のシェルコマンドを修正 アイボット セキュリティ勧告(RSS ) 0 2008年1月28日 10:20午前
何番目のOSの最大長は、 Unixのコマンドラインです。 kumardesai UNIXのダミー質問と回答のため 2 2007年11月28日 07:37午前
どのようにして変数にするか/パラメータは、コマンドラインからですか? avisram UNIXのダミー質問と回答のため 1 2005年7月21日 09:47午前
機能へのコマンドラインパラメータを渡す- shに ヴィノ シェルプログラミングとスクリプティング 5 2005年3月5日 05:51午後

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 スレッドを評価 表示モード
  #1固定リンク)  
Old 2007年11月19日
cmcnorgan cmcnorgan is offline
登録ユーザー
  
 

参加日: 2007年11月
場所:ロンドン、オンタリオ州、カナダ
投稿: 2
任意の長さのビルのコマンドラインパラメータ

私は、うまくいけば、このように、以前は何も投稿されていません冗長では、この問題解決は、既存のスレッドを見つけることができませんでした。ここに表示されます:

私はCは、パラメータを書いていますが、任意のコードを持つプログラムを実行するシェルスクリプト:

myprog - 1ファイル1 \
- bファイル2 \
- cをファイル3 ... \
- nをfileN \
操作は" + bの+ Cを+...+ Ñ "


myprog動作は、ファイルのサブディレクトリにあります: 、 、 02/02.ext 01/01.ext ...等

以来、ファイル名、ディレクトリ名と一致するように起こり、私の練習(のディレクトリには任意のコードのスクリプトを渡すことができるようにするには、が26未満のため、 "を実行しているとの懸念- x "のタグをさせていきます) 。次に、スクリプトの引数リストを構築するためmyprogだろう。
myscript.sh 01 02 03 ... 12
に展開します:
myprog - 01/01.ext - b 02/02.ext ... - k膜11/11.ext - lの12/12.ext \
操作は" + bの+ Cを+...+韓国+ L "を


この作業は簡単な方法はありますか?
  #2固定リンク)  
Old 2007年11月19日
Smiling Dragon's Avatar
ドラゴン笑顔 Smiling Dragon is offline Forum Advisor  
Disorganisedユーザ
  
 

参加日: 2007年11月
場所:ニュージーランド
投稿数: 922
Post

未検証を受ける必要がありますが、かなり近い
コード:
#!/bin/sh
if [ $# -gt 26 ]
then
   echo "Too many args!"
   exit 1
fi

letters="a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z"
cli="myprog"
count=1
operation=""
for argument in $*
do
   count=`expr $count + 1`
   letter=`echo $letters | head +$count | tail -1`
   cli="$cli -$letter ${argument}/${argument}.ext"
   if [ -z "$operation" ]
   then
      operation=$letter
   else
      operation="${operation}+${letter}"
   fi
done
cli="$cli -operation \"$operation\""
$cli
  #3固定リンク)  
Old 2007年11月20日
Franklin52 Franklin52 is offline Forum Staff  
モデレータ
  
 

参加日: 2007年2月
投稿数:4300
コード:
#!/bin/sh

echo $1 |
awk 'BEGIN {
n="abcdefghijklmnopqrstuvwxyz"
printf("myprog")}
{ for (i=1;i<=$0;i++) {
  printf(" -%s %02d/%02d.ext", substr(n,i,1), i, i)
  op=op substr(n,i,1)"+"
  }
  op=substr(op,1,length(op)-1)
  printf(" -operation \"%s\"\n",op)
}'
利用方法: " 5 "ではなく"スクリプト01 ... 05からスクリプト" 。

1つの値だけで十分です。

よろしく
Closed Thread

ブックマーク

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは 〜の上に
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 12:46午前


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0