問題タブ [tilde-expansion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2295 参照

windows - Windowsファイルパターンのチルダの意味

検索するパターンがあります。「*.txt」と言います。

今、そこにリストしたくないファイルがいくつかあります。このパターンには合わないと思います。しかし、Windowsではそうです。

レガシー 8.3 ファイル名の短縮形を作成するためにチルダ文字が使用されていることは知っています。つまり、LongFilename.json は LONGFI~1.JSO の可能性があります。しかし、ファイル検索パターンのウィンドウで何らかの形で処理されているとは知りませんでした。彼らです。それらが何を意味するのか、ファイルを自分のやり方で一致させる方法についてのドキュメントが見つかりません。

私の問題は短い形式ではありません。もしくは直接関係ないと思います。

ファイル「A.txt」があります。今度は一時ファイルが欲しくて「A.txt~」を使いました。通常は表示されない UNIX バックアップ ファイルです。しかし、Windows では、それ自体で特別な意味を持つべきではありません。私のアプリケーションのみ。

「*.txt」ファイルのリストが必要です。コマンド dir *.txt は、驚いたことに、同じディレクトリ内のすべての .txt~ ファイルも返します。そして、私はそれらを望んでいません。Win32 API の FindFileFirst を使用します。ドキュメントでチルダ文字については何も見つかりませんでした。FindFileFirst(" .txt", handle) はファイル "A.txt~" も返します。それらを除外するためにいくつかのフラグを使用できますか? 「。」のように、特別な条件を作成できることを知っています。と ".."。~ 演算子はどのように機能しますか? A.txt~1 も一致します。チルダ以降はすべて無視されますか? それは機能ですか、それともバグですか?

Windows 7 Professional、64 エディションでそれをテストしています。

0 投票する
1 に答える
95 参照

bash - Linux パスのスラッシュを bash スクリプトの引用符で囲む必要があるのはいつですか

最初の拡張は機能しないのに、2 番目の拡張は機能するのはなぜですか?

チルダは引用符の外側で展開する必要があることは知っていますが、予想外にスラッシュも外側にある必要がありました。

0 投票する
2 に答える
1905 参照

shell - チルダ (~/) がシェル スクリプトの if then ステートメントで機能しない

次のスクリプトがあります

ファイルがそこにあることは知っていますが、 ~/ ?

ファイルが見つからない

0 投票する
1 に答える
387 参照

bash - $PATH 評価時のチルダ展開

私のシステム上*

スクリプトを見つけてtempdir/tempscript印刷しますh

ただし、 echo$PATHを実行する~/tempdirと、最後に表示されるため、展開されませんでした。割り当てを二重引用符で囲んでいるため、これが起こると予想されます。

ただし、評価時にチルダ展開が発生する理由に関するドキュメントは見つかりません$PATH。(PATH 変数にはまだ が含まれていることに注意してください~。)

これは移植可能な動作ですか?

* GNU bash 3.2 を搭載した Mac OS X

0 投票する
2 に答える
242 参照

bash - bashでチルダ展開と変数置換を組み合わせる

root として bash を実行していて、ユーザーのホーム ディレクトリを chown したいとしますadaadaという変数に格納されているとも言います$USER(これはスクリプトから実行しているためです)。

以下を試したところ、

/home/root/adaシェルは最初にチルダ展開を実行したため、 ではなくchown を試みました/home/ada

ネストされた置換と適切なエスケープでそれを行う方法はありますか?

0 投票する
1 に答える
106 参照

java - 相対コマンドライン引数を取得... Javaで

いいえ、プロジェクトや作業ディレクトリに相対的という意味ではありません。次のコマンドjava -jar myJar.jar ~/は文字列を提供する必要があることを意味し"/home/user"ます...これは期待どおりに機能していないようです。Eclipse の「Run Configurations」メニューを介して引数を渡していますが、これが問題を引き起こしているかどうかはわかりません。Runnable Jar から同じ結果が得られます...不正な形式の URL 例外がスローされます...しかし、URI もそれを好みません

この機能を実装する方法を知っている人はいますか? 引数~/が次のように渡される(String[] args)ように"/home/user"

0 投票する
1 に答える
5878 参照

linux - シェルスクリプトでパスのチルダが展開されないのはなぜですか?

手動でインストールした Java (システム全体のデフォルト Java ではない) を Android Studio ランチャー (studio.sh) で使用しようとしました。PATHファイルでandを既に宣言しているのでJAVA_HOME.bashrcシェル スクリプトでそのファイルを読み込んだだけです。

. /home/foobar/.bashrc

しかし、何らかの理由で、$JAVA_HOME/bin/javaまだスクリプトによって実行可能ファイルとして認識されませんでした。

ログを追加したところJAVA_HOME、~/install/java... として展開されていることがわかりました。つまり、チルダ演算子がホーム ディレクトリに展開されていませんでした。

いろいろ調べてみましたが、展開されていない理由が見つかりませんでした。チルダは Bash 固有の機能ですか (スクリプトは を使用し#!/bin/sh、Linux Mint は bash ではなくダッシュを使用します)? 状況によってはチルダが機能しませんか?

~宣言を$HOMEに置き換えた.bashrcところ、動作したため、HOME は実行時に認識されます。