2014-02-15 00:30:37 +0000 2014-02-15 00:30:37 +0000
43
43

どのようにMac OSXのターミナルでフルファイル名を含むファイルのフルパスを表示するには?

‘ls’は、ファイル名を表示することができます、例えば、

ls config.inc.php
config.inc.php

‘pwd’は、現在のフォルダのフルパスを表示するには、例えば、

pwd
/Application/XAMPP/xamppfiles/phpmyadmin

コマンドは、それらを一緒に置くことができますが、表示することができるだろうがあります:

/Application/XAMPP/xamppfiles/phpmyadmin/config.inc.php

回答 (8)

31
31
31
2015-09-18 19:36:53 +0000

ここから https://stackoverflow.com/a/4031502/804713

macports と homebrew は greadlink (GNU readlink) を含む coreutils パッケージを提供しています。

20
20
20
2014-02-15 00:55:03 +0000

これを行うには多くの方法があります。ここでは、あなたのために働くかもしれない一つの例を紹介します:

claw:~ jonv$ echo `pwd`/`ls config.in.php`
/Users/jonv/config.in.php

もっと多くの例が欲しい場合は、スタックオーバーフローの this post にたくさんあります。

9
9
9
2016-03-24 06:12:55 +0000

Mac OSX の場合は、以下の手順を実行してください。以下のターミナルコマンドのいずれかを入力します。cd を実際のファイル名に置き換えてください。Enterキーを押してください。

3
3
3
2019-10-17 22:23:18 +0000

使用例: realpath

例:

$ realpath README.md 
/Users/joe/my/long/directory/structure/README.md

stackoverflowでここに回答しました。https://stackoverflow.com/a/3915075/441960 ] (https://stackoverflow.com/a/3915075/441960)

FYI, 私のバージョンのMacOS (OSX):

$ uname -a
Darwin my-machine 18.7.0 Darwin Kernel Version 18.7.0: Tue Aug 20 16:57:14 PDT 2019; root:xnu-4903.271.2~2/RELEASE_X86_64 x86_64
3
3
3
2019-01-25 01:03:16 +0000

与えられたソリューションのどれも気に入らなかったので、 https://stackoverflow.com/a/22684652/953327

別名を作成します。これは、単に pwdls $1 を組み合わせた関数呼び出しです。

alias lsf='function _lsf(){ echo "$(pwd)/$(ls $1)"; };_lsf'

使用例:

lsf registry.lock
-> /tmp/registry.lock

私は “list full "または "list file "のために.bash_profileを選びました。


更新 (@santiago-ariztiさんありがとうございます) 相対パス(例: lsf)で使えるようにするために

alias lsf='function _lsf(){ (cd $(dirname "$1") && echo $(pwd)/$(basename "$1")) };_lsf'
2
2
2
2019-07-26 22:18:13 +0000

私はあなたが必要とする以上のものが欲しかった、私はまた、../../readme.mdのような相対ディレクトリ内のファイルについて尋ねることができるようにする必要があり、結果は/Users/santi/readme.md

のようなものでなければならないので、私は以下の内容で$PATHと呼ばれるlsfの一部であるフォルダ内の(実行可能な)スクリプトを作成しました。

#!/bin/bash
F=${1:?'usage lsf ../../readme.md'}
( cd $(dirname "$F") && echo $(pwd)/$(basename "$F") )

だから次のようにそれを使用することができます:

santi@santis-mac:~/p/dir1/dir2$ lsf ../../readme.md 
/Users/santi/p/readme.md

パラメータは警告を与えません

santi@santis-mac:~/p/dir1/dir2$ lsf
/Users/santi/bin/lsf: line 3: 1: usage lsf ../../readme.md

偽のディレクトリは警告を与えます (dirnameのため)

santi@santis-mac:~/p/dir1/dir2$ lsf ../../fakedir/readme.md
/Users/santi/bin/lsf: line 5: cd: ../../fakedir: No such file or directory

偽のファイルが、実際のディレクトリは警告を与えません (必要であれば検証を追加することができます)

santi@santis-mac:~/p/dir1/dir2$ lsf ../../fakefile.md 
/Users/santi/p/fakefile.md
2
2
2
2018-01-22 10:07:23 +0000

また、完全なパスを持つすべてのファイルをリストアップするために “find "コマンドを使用することができます:

find DirectoryName -type f

または単に次のように:

find . -type f
1
1
1
2019-02-07 00:12:06 +0000

以下は、作業ディレクトリ内でfile.txtにマッチするファイルを見つけ、その絶対パス

find `pwd` -name file.txt
```を返します。