Menurut halaman manual ls , Anda harus dapat -O
dikombinasikan dengan -l
opsi untuk melihat flag dengan ls. Sebagai contoh:
ls -Ol foo.txt
-rw-r--r-- 1 harry staff - 0 18 Aug 19:11 foo.txt
chflags hidden foo.txt
ls -Ol foo.txt
-rw-r--r-- 1 harry staff hidden 0 18 Aug 19:11 foo.txt
chflags nohidden foo.txt
ls -Ol foo.txt
-rw-r--r-- 1 harry staff - 0 18 Aug 19:11 foo.txt
Sunting: Hanya untuk memberikan solusi yang lebih spesifik untuk apa yang diinginkan OP (lihat komentar di bawah): Untuk melihat apakah folder disembunyikan atau tidak, kita dapat memberikan -a
opsi kepada ls untuk melihat folder itu sendiri. Kami kemudian dapat menyalurkan output ke sed -n 2p
(terima kasih Stack Overflow ) untuk mendapatkan garis yang diperlukan dari output itu. Sebuah contoh:
mkdir foo
chflags hidden foo
ls -aOl foo | sed -n 2p
drwxr-xr-x@ 2 harry staff hidden 68 18 Aug 19:11 .
Sunting 2: Untuk perintah yang seharusnya berfungsi terlepas dari apakah itu file atau folder, kita perlu melakukan sesuatu yang sedikit lebih meretas.
Garis keluaran yang diperlukan ls -al
bervariasi tergantung pada apakah benda itu berupa file atau folder, karena folder menunjukkan jumlah total, sedangkan file tidak. Untuk menyiasati ini, kita dapat memahami karakter r
. Ini harus di ~ semua file / folder (hampir semua harus memiliki setidaknya satu izin baca), tetapi tidak di baris total.
Karena baris yang ingin kita dapatkan kemudian menjadi baris pertama, kita dapat menggunakan head -n 1
untuk mendapatkan baris pertama (alternatif, jika Anda lebih suka sed, sed -n 1p
bisa digunakan).
Jadi, misalnya dengan direktori:
mkdir foo
chflags hidden foo
ls -aOl foo | grep r | head -n 1
drwxr-xr-x@ 2 harry staff hidden 68 18 Aug 19:11 .
dan dengan file:
touch foo.txt
chflags hidden foo.txt
ls -aOl foo.txt | grep r | head -n 1
-rw-r--r-- 1 harry staff hidden 0 18 Aug 19:11 foo.txt
Sunting 3: Lihat jawaban Tyilo di bawah ini untuk cara yang lebih baik daripada menerima r
:)