web-dev-qa-db-ja.com

書き込みコマンドlsの後に、実際のフォルダーが表示されないのはなぜですか?

ユーザーのコメントの後、たとえ pLumo が正しい答えを与えたとしても、正確になるようにこの質問を編集します(どうもありがとう!)

ターミナルを開いて、リモートサーバーをrootユーザーとして接続します。

shh root@myip

サーバー内でrootユーザーとして:

[root@servidor ~]

lsと入力すると、いくつかのファイルが表示されますが、/homeとしてフォルダを表示できません。

/homeと入力すると、実際に/homeディレクトリにアクセスできるので、lsを実行して、このディレクトリ内のすべてを確認できます。

問題は、なぜ[root@servidor ~]からサーバー内のすべてを表示できないのかということでした。

そうすると、ラップトップでターミナルを実行すると多くのフォルダーが表示されますが、サーバーの場合と同様に、cd /を実行してルートディレクトリに移動すると、すべてが再び表示されます。

端末を起動すると:

~ 

lsと入力した場合:

Code       Desktop    Downloads   Music      pdf       Public     Videos
Descargas  Documents  Escritorio  Pictures  Templates

Pwdと入力した場合:

/home/mynameuser

~から入力した場合:

~ cd /

私はすべてのディレクトリとファイルを見ることができます:

bin      Documents       lib         Music     run       Templates  vmlinuz
boot     Downloads       lib64       opt       sbin      timeshift  vmlinuz.old
cdrom    etc             lost+found  Pictures  snap      tmp
core     home            media       proc      srv       usr
Desktop  initrd.img      mnt         Public    swapfile  var
dev      initrd.img.old  mssql-cli   root      sys       Videos

/から入力した場合:

/ cd home/mynameuser

最初に同じ~に行きます:

pwd =>

home/mynameuser

私は、pLumoの説明の後で自分の質問を解決すると思います。

ラップトップで端末を起動すると、/home/mynameuser内で開きます。

Ssh接続を開始すると、/rootディレクトリではなく、/home directoryではないことがわかります。

1
lamer_GodLevel

TL; DR:

lsを使用すると、現在作業中のディレクトリの内容が表示されます。おそらく~内ではなく/内にいるため、/homeが表示されません。


ディレクトリhomeは通常、ディレクトリルートの/の下に配置されます。 ls /homeを実行すると、どこからでもコンテンツが表示されます。これは、/で始まるパス名がabsoluteパスであるためです。

lsを使用すると、現在の作業ディレクトリでディレクトリを検索します。それを明らかにするには、pwdを使用します。新しいssh接続の場合、通常は~(別名/home/$USER/ ==ユーザーのホームディレクトリ)です。

ls /を使用してディレクトリルート内のhomeを確認するか、cd /を使用して現在の作業ディレクトリをディレクトリルートに変更します。

3
pLumo