Apakah ada perintah seperti namei untuk OS X?

10

Saya menyaring beberapa masalah izin yang salah dan menemukan perintah namei untuk Linux. Homebrew saat ini tidak memiliki port Mac.

namei - ikuti pathname sampai titik terminal ditemukan

Apakah ada perintah atau serangkaian perintah yang dapat digunakan untuk mencapai hal yang sama pada OS X?

phatblat
sumber

Jawaban:

7

Anda dapat mengunduh kode sumber nameidari SourceForge . Untuk mengkompilasi, Anda perlu menghapus #include <sys/sysmacros.h>garis dari stat.c, lalu jalankan make.

Tata Dias
sumber
Terima kasih, saya tidak menyadari bahwa versi di util-linux didasarkan pada yang dari SourceForge. Saya akhirnya menemukan cara untuk mendapatkan util-linux untuk dikompilasi, tetapi ia datang dengan banyak utilitas lain, banyak yang berlebihan pada OS X. Bagaimanapun, lihat jawaban saya yang diperbarui untuk formula homebrew dari yang asli. Hati-hati, menginstal dari sumber dengan make installdapat menyebabkan masalah jika /usr/local/bin' is ahead of / usr / bin` di PATH Anda saat menginstal hardlink ke stat. Formula menghindari ini dan hanya menginstal di bawah namei.
Michael DM Dryden
6

Macports memiliki porta itu: https://trac.macports.org/browser/trunk/dports/devel/util-linux/Portfile

Saya memang mencoba membuat resep homebrew untuk itu, tetapi ada beberapa masalah yang membuatnya dikompilasi. Itu pasti mungkin, tetapi ada beberapa masalah untuk diselesaikan.

Perbarui :

Saya telah membuat formula yang dapat diinstal dengan:

brew install mkdryden/homebrew-misc/namei

Ini adalah versi asli, bukan versi yang ditarik ke util-linux. (tidak yakin berapa banyak yang telah berubah sejak aslinya)

Michael DM Dryden
sumber
Bukan ahli homebrew, tetapi apakah itu menggunakan file di github.com/mkdryden/homebrew-misc/blob/master/Formula/namei.rb ?
mwfearnley
@ mwfearnley Ya, itu file resepnya. Anda dapat melihatnya untuk melihat tambalan yang harus saya buat agar bisa dikompilasi, meskipun itu 5 tahun yang lalu; Saya tidak yakin apakah itu masih berfungsi dengan baik.
Michael DM Dryden
Terima kasih, ini bekerja untuk saya kemarin :)
mwfearnley
-2

Saya menemukan ini sebagai solusi yang mungkin:

ls -l /path/to/directory
Craig Wayne
sumber
1
Ini hanya menunjukkan lapisan symlink pertama, bukan seluruh rantai symlink.
Jose Alban