これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド lnposix です。
プログラム:
NAME
ln — リンクファイル
SYNOPSIS
ln [−fs] [−L|−P] ソースファイル ターゲットファイル
ln [−fs] [−L|−P] ソースファイル... ターゲットディレクトリ
DESCRIPTION
最初の概要フォームでは、 ln ユーティリティは、次の場所に新しいディレクトリ エントリ (リンク) を作成します。
で指定された宛先パス ターゲットファイル オペランド。 もし −s オプションが指定されている、
で指定されたファイルに対してシンボリック リンクが作成されます。 ソースファイル オペランド。 これ
最後のオペランドが既存の名前を指定しない場合、最初の概要形式が想定されます。
ディレクトリ; XNUMX つ以上のオペランドが指定され、最後のオペランドが既存のオペランドではない場合
ディレクトリにあるとエラーが発生します。
XNUMX 番目の概要フォームでは、 ln ユーティリティは新しいディレクトリ エントリ (リンク) を作成します。または
もし −s オプションで指定された各ファイルに対して、シンボリック リンクが指定されます。 ソースファイル
オペランド。 で指定された既存のディレクトリ内の宛先パスにあります。 ターゲットディレクトリ.
最後のオペランドが、システムによって指定されていないタイプの既存のファイルを指定した場合
POSIX.1-2008 のインターフェイス ボリューム、動作は実装定義です。
それぞれに対応する宛先パス ソースファイル の連結になります。
ターゲット ディレクトリのパス名、 ターゲット ディレクトリのパス名が指定されていない場合の文字
で終わる、およびその最後のパス名コンポーネント ソースファイル。 2回目のあらすじ
最後のオペランドが既存のディレクトリを指定する場合、この形式が想定されます。
それぞれについて、 ソースファイル:
1. 宛先パスが存在し、前のステップで作成された場合、そのパスは指定されません。
かどうか ln 診断メッセージを標準エラーに書き込み、それ以上何もしません。
現在 ソースファイル、残りの項目に進みます ソースファイルs; または継続します
現在の処理 ソースファイル。 宛先パスが存在する場合:
a。 の場合 −f オプションが指定されていません、 ln 標準に診断メッセージを書き込むものとします
エラー。現在のものでは何もしません。 ソースファイル、残りの項目に進みます
ソースファイルs.
NS。 もしも デスティネーション 現在のディレクトリエントリと同じ名前を付けます ソースファイル ln 条
診断メッセージを標準エラーに書き込み、現在のメッセージに対してはそれ以上何もしません。
ソースファイル、残りの項目に進みます ソースファイルs.
c. と同等の措置を実行するものとします。 リンク解除()で定義された関数
POSIX.1-2008 のシステム インターフェイス ボリューム。以下を使用して呼び出されます。 デスティネーション として path
口論。 何らかの理由でこれが失敗した場合、 ln に診断メッセージを書き込む必要があります
標準エラー、現在のものについてはこれ以上何もしません ソースファイル、および任意のに進みます
残り ソースファイルs.
2。 もし −s オプションが指定されている場合は、それと同等の動作が実行されます。 シンボリックリンク()
と機能する ソースファイル として パス1 引数と宛先パスを パス2
引数。 は ln ユーティリティはそれ以上何もしません ソースファイル そしていずれにでも進むだろう
残りのファイル。
3。 もし ソースファイル はシンボリックリンクです:
a。 の場合 −p オプションが有効な場合、アクションは、
リンカ() 関数を使用 ソースファイル として パス1 引数、宛先パスとして
パス2 引数、AT_FDCWD を fd1 & fd2 引数、およびゼロ フラグ
引数。
b。 の場合 −l オプションが有効な場合、アクションは、
リンカ() 関数を使用 ソースファイル として パス1 引数、宛先パスとして
パス2 引数、AT_FDCWD を fd1 & fd2 引数、および AT_SYMLINK_FOLLOW
として フラグ 引数。
ln ユーティリティはそれ以上何もしません ソースファイル そして残りの部分に進みます
ファイル。
4. 同等の行為を行うものとします。 () システムで定義された関数
POSIX.1-2008 のインターフェースボリュームを使用 ソースファイル として パス1 引数と、
宛先パスとして パス2 引数。
OPTIONS
ln ユーティリティは、POSIX.1‐2008の基本定義ボリュームに準拠する必要があります。 セクション 12.2,
ユーティリティ 構文 ガイドライン.
次のオプションがサポートされます。
−f リンクを許可するには、既存の宛先パス名を強制的に削除します。
−l それぞれについて、 ソースファイル シンボリック リンク タイプのファイルを指定するオペランドの場合は、
シンボリック リンクによって参照されるファイルへの (ハード) リンク。
−p それぞれについて、 ソースファイル シンボリック リンク タイプのファイルを指定するオペランドの場合は、
シンボリック リンク自体への (ハード) リンク。
−s ハード リンクの代わりにシンボリック リンクを作成します。 もし −s オプションが指定されている場合、
−l & −p オプションは黙って無視されます。
相互に排他的なオプションを複数指定する −l & −p してはならない
エラーとみなされます。 最後に指定したオプションによってユーティリティの動作が決まります。
( −s オプションを指定すると無視されます)。
Status −s オプションが指定されておらず、 −l また −p オプションが指定されている、
実装で定義されたのはどれか −l & −p オプションはデフォルトとして使用されます。
オペランド
次のオペランドがサポートされます。
ソースファイル
リンクするファイルのパス名。 もし −s オプションが指定されている、いいえ
ファイルの種類またはその存在には制限が設けられます。 もし −s
オプションが指定されていない場合、ディレクトリをリンクできるかどうかは実装です
定義された。
ターゲットファイル
作成される新しいディレクトリ エントリのパス名。
ターゲットディレクトリ
新しいディレクトリエントリが保存される既存のディレクトリのパス名
作成しました。
標準入力
使用されていない。
入力 ファイル
なし。
ENVIRONMENT 変数
次の環境変数は、の実行に影響を与えます。 ln:
言語 設定されていない、または設定されていない国際化変数のデフォルト値を指定します
ヌル。 (POSIX.1‐2008の基本定義ボリュームを参照してください。 セクション 8.2,
国際化 Variables 国際化の優先順位について
ロケールカテゴリの値を決定するために使用される変数。)
LC_ALL 空でない文字列値に設定されている場合は、他のすべての値を上書きします
国際化変数。
LC_CTYPE テキストデータのバイトシーケンスを解釈するためのロケールを決定します
文字として(たとえば、のマルチバイト文字ではなくシングルバイト
引数)。
LC_MESSAGES
の形式と内容に影響を与えるために使用する必要があるロケールを決定します
標準エラーに書き込まれる診断メッセージ。
NLSパス の処理のためのメッセージカタログの場所を決定します LC_MESSAGES.
非同期 イベント
デフォルト。
標準出力
使用されていない。
標準
標準エラーは、診断メッセージにのみ使用されます。
出力 ファイル
なし。
拡張済み DESCRIPTION
なし。
EXIT ステータス
次の終了値が返されます。
0 指定されたすべてのファイルが正常にリンクされました。
> 0エラーが発生しました。
結果 OF エラー
デフォルト。
フォロー中 セクション 有益です。
お申込み USAGE
なし。
例
なし。
理論的根拠
「エラーの結果」セクションでは、次のことは必要ありません。 ln −f a b 削除する b 後続の場合
リンク操作は失敗します。
いくつかの歴史的なバージョン ln (SVID で指定されたものを含む) のリンクを解除します。
宛先ファイルが存在する場合、デフォルトで。 書き込みが許可されていないモードの場合は、
バージョンでは、リンク解除を試行する前に確認を求められます。 これらのバージョンでは、 −f
オプションの原因 ln 確認を求めないでください。
これにより、 ln ターゲットファイルがすでに存在する場合でもリンクの作成に成功するには、
ファイル自体は書き込み可能ではありません (ディレクトリは書き込み可能である必要があります)。 初期の提案
この機能を指定しました。
POSIX.1-2008 のこのボリュームでは、 ln 既存の宛先のリンクを解除するユーティリティ
次の理由により、デフォルトでパスが使用されます。
* ln ユーティリティは歴史的に、シェル アプリケーションにロックを提供するために使用されてきました。
互換性のない使用法 ln デフォルトでは宛先パスのリンクが解除されます。 そこには
この機能を追加することに対応する技術的な利点はありませんでした。
* この機能により提供されたのは、 ln ファイルのリンク構造を破壊する機能。
~の歴史的な振る舞いを変える ln.
* この機能は、次の組み合わせで簡単に再現できます。 rm & ln.
* これは多くのシステムにおいて歴史的に行われてきたことではありません。 BSD および BSD 派生システムでは、
この行動を支持します。 残念ながら、どの動作を選択してもスクリプトが発生する可能性があります。
他の動作が失敗することを期待して書かれています。
* であることが望ましい ln と同じ方法で実行します () 関数。
ターゲットがすでに存在することを許可しません。
POSIX.1-2008 のこのボリュームには、 −f シェルスクリプトのサポートを提供するオプション
SVID セマンティクスに応じて異なります。 シェルスクリプトは書かれない可能性が高い
プロンプトを処理するには ln したがって、 −f オプションを選択します。
−f オプションは、多くの歴史的バージョンの文書化されていない機能です。 ln ユーティリティ、
ディレクトリへのリンクを許可します。 これらのバージョンには変更が必要です。
POSIX.1-2008 のこのボリュームの初期の提案にも、 −i オプション、動作
のような −i オプション cp & mv、既存のリンクを解除する前に確認を求めます
ファイル。 これは歴史的には慣例ではありませんでした ln ユーティリティは省略されています。
−l & −p オプションを使用すると、 ln ユーティリティ。
この標準の以前のバージョンでは、これらのオプションが指定されておらず、次の動作が必要でした。
今説明したのは、 −l オプション。 多くのシステムはデフォルトで、または代替として、
不適合 ln ユーティリティの動作について説明します。 −p オプション。 以来
アプリケーションが依存できなかった ln 実際にリンクをたどると、 −l & −p オプションは
アプリケーションに必要な動作を指定するために追加されます。
−l & −p 次の場合、オプションは無視されます。 −s エイリアスを許可するために指定されます。
ハードリンクを作成するときのデフォルトの動作を変更するために作成されます(たとえば、 alias ln='ln
−l')。 次の場合には何の役にも立ちません −s が指定されているため、 ソースファイル それはただの文字列です
作成されたシンボリック リンクのコンテンツとして使用されるため、ファイルとして存在する必要はありません。
この仕様により、次のことが保証されます。 ln a a の有無にかかわらず −f オプションはリンクを解除しません
file a。 この標準の以前のバージョンでは、この場合は不明瞭でした。
未来 道順
なし。
onworks.net サービスを使用してオンラインで lnposix を使用する