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フォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
トリッキーなシェルスクリプト namishtiwari シェルプログラミングとスクリプティング 61 2007年8月23日 06:26午前
トリッキーな検索置換: Pls役立ちます。 vaibhavs シェルプログラミングとスクリプティング 5 2007年6月11日 02:44午後
トリッキーセッド bestbuyernc シェルプログラミングとスクリプティング 2 2005年11月22日 01:03午後
トリッキーな一... saabir Windows&DOS:課題&ディスカッション 1 2002年12月12日 05:34午後
トリッキーなファイルアクセス許可の質問 フック ファイルシステムは、ディスクとメモリ 3 2002年7月16日 03:25午後

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

参加日: 2002年7月
投稿: 22
トリッキーなスクリプトの質問

やあ、

私はUNIXのスクリプトを書いている最中だが、外部のホストへのファイルやSFTPの問題にこだわっています。この問題は、ファイルがディレクトリには、次の順序でファイルftp'edであるリモートホスト上の相関を注文番号として私のサーバー上に作成します。

例:
サーバーはファイル名:
myserver > /ホーム/ 572011 O4MP ORDS 188406 V01 DT 20060608154548.txt

私のファイル名には、第4フィールド( 188406 )は、リモートサーバー上のディレクトリには、ファイルを保存する必要があります行います。 sftp'ingので、このファイルのパスにする必要があるリモートサーバー上

リモートサーバー:
remoteserver > /テストDocuments/TestOrders/180001-190000/188001-189000/188401-188500/188406

リモートサーバーの30 +のディレクトリとサブディレクトリにこのファイルの転送を容易にするために作成範囲をしている。範囲レベルとサブディレクトリとして、リモートサーバのディレクトリ一覧に従ってください:
100001から110000まで110001から120000まで
180001から190000 270001から280000まで300001 〜 310000 320001から330000まで
330001から340000 350001から360000まで370001から380000 380001から390000
390001 〜 400000 400001 〜 410000 410001から420000 420001から430000
430001から440000 440001から450000 450001から460000まで460001 〜 470000
470001から480000 480001から490000まで490001から500000まで500001から510000
510001から520000まで520001 〜 530000 530001から540000まで540001から550000
550001 〜 560000 560001 〜 570000 570001から580000 580001から590000まで
590001から600000まで600001 〜 610000

そこで別の例では、受信される場合は、ファイル名は:
/ホーム/ 572011 O4MP ORDS 588406 V01 DT 20060608154548.txt (注:上記のように説明588406リモートサイト上に格納されるディレクトリです)

どうすればよいためには、規定のフィールドでのファイル名を調べるにして、リモートサーバーのパスには十分なスマートSFTPのスクリプトを作ることができます:
remoteserver > /テストDocuments/TestOrders/580001-590000/588001-589000/588401-588500/588406

これは# ! / bin / shに、 # ! / binに/または# !ビンksh / / cshおよびHP - UXの11iに基づいています。

あなたの援助を大幅にいただければ幸いです。

ありがとう。
  #2固定リンク)  
Old 2006年6月28日
LivinFree's Avatar
LivinFree LivinFree is offline Forum Advisor  
脳たりん臨時
  
 

参加日: 2001年7月
場所: Portlandまたは、アメリカ合衆国
投稿数: 1,584
ここに1つのヒント:
kshまたはbashの最近のバージョンを使用すると、この操作を行うことができます:
コード:
fullname="/home/ 572011 O4MP ORDS 188406 V01 DT 20060608154548.txt"
file="${fullname##*/}"
read _ _ _ dir _ <<<$file
echo $dir
kshまたはbashの場合はいずれかの古いバージョンをインストールして、次の作品ではなく、私としてaesthitically満足(することです
コード:
fullname="/home/ 572011 O4MP ORDS 188406 V01 DT 20060608154548.txt"
file="${fullname##*/}"
echo $file| read _ _ _ dir _
echo $dir
しばらくして実装する場合、さらなる問題をこのポストに陥る...
  #3固定リンク)  
Old 2006年6月29日
budrito budrito is offline
登録ユーザー
  
 

参加日: 2002年7月
投稿: 22
やあ、

上記の問題は、私は、リモートサーバー上の範囲のディレクトリのフルパスを入力しないということです。だろうが、私の出力のみ188406私に何かを与えるsilimar後:

/テストDocuments/TestOrders/180001-190000/188001-189000/188406

thks 。
  #4固定リンク)  
Old 2006年6月30日
LivinFree's Avatar
LivinFree LivinFree is offline Forum Advisor  
脳たりん臨時
  
 

参加日: 2001年7月
場所: Portlandまたは、アメリカ合衆国
投稿数: 1,584
さて、あなたのためのプロジェクト全体のこと嫌い、私をここにいくつかのビットをしているんですが...

どのようにして、他のディレクトリ名を決めるのですか?彼ら(非変更)の静的または動的な(おそらく各ファイルに対して)違う可能性があるか?

そして重要なのは、どのようなシェルを使用しているか?
Closed Thread

ブックマーク

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

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

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

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




すべてGMT -4です。現在の時刻は 07:00午後


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

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