テキストを挿入する OS X サービス ( Mark Aufflick によって作成され、私はそれをハッキングしています) を使用していますが、奇妙な問題が発生しています。
このサービスは、~/Library/Services にインストールされる .service アプリケーションです。pbs が正常に実行され、サービス リストが再ハッシュされました。
問題は、まだ実行されていないサービスを選択すると、次のエラー メッセージが表示されることです。
Mountain Lion での sed の問題
次のようなファイルの行を削除しようとしています:
CNAME mydomain.com で 1800 をテストします。
Mountain Lion で sed を使用しており、次のことを試していますが、エラーは発生しませんが、行は削除されません。
sed -i -e '/$regex/d' $file
また
sed -i "" -e '/$regex/d' $file
$regex は上記の行を含む式であり、$file はその行があるファイルの名前です。
どんな助けでも感謝します。
オプションがあります。式を使用するのは正しい考え方ですが、構成を使用することでメリットが得られる場合もあります。
式を使用するには、スクリプト タスクまたは SQL 実行タスクを使用して、処理するファイルのリストを返す必要があります。
返された各値を式に渡される独自の変数に割り当てるか、FOR EACH ループを使用してリストを処理し、毎回子パッケージの場所を割り当てる必要があります。
もう 1 つのオプションは、構成を使用することです。私の好みは、SSIS 内で構成テーブルを使用することです。各環境に同じパッケージ リストがある場合は、ルート ディレクトリを渡し、次の式を使用することができます: @[User::RootPackagePath] + "\PackageName.dtsx"
または、構成テーブル内の子パッケージごとに 1 つのレコードを単純に作成し、それをパッケージに渡すこともできます。
コメントに基づいて編集:
ファイルシステムからパッケージを呼び出してからSQLを呼び出すように、構成を介してパッケージを変更するように構成することができました。
それぞれに Connection と PackageName を渡すだけで済みました。SQL では、接続マネージャーからの名前 (私の場合は .\SQL2008R2) とパッケージ名 (\Package1) が必要です。ファイル システムの場合、PackageName は空白になり、接続は接続マネージャーの FileConnection になります。
両方をパッケージに保持する必要がありますが、2 つを切り替える必要があります。