Bagi mereka yang keluar dari loop, sl
adalah alat baris perintah lucu yang dimaksudkan untuk membuat orang tersandung jika mereka salah ketik ls
. Ketika diminta mencetak Lokomotif Uap. Sebagai contoh:
( ) (@@) ( ) (@) () @@ O @ O @ O
(@@@)
( )
(@@@@)
( )
==== ________ ___________
_D _| |_______/ \__I_I_____===__|_________|
|(_)--- | H\________/ | | =|___ ___| _________________
/ | | H | | | | ||_| |_|| _| \_____A
| | | H |__--------------------| [___] | =| |
| ________|___H__/__|_____/[][]~\_______| | -| |
|/ | |-----------I_____I [][] [] D |=======|____|________________________|_
__/ =| o |=-O=====O=====O=====O \ ____Y___________|__|__________________________|_
|/-=|___|= || || || |_____/~\___/ |_D__D__D_| |_D__D__D_|
\_/ \__/ \__/ \__/ \__/ \_/ \_/ \_/ \_/ \_/
Namun, di halaman manual untuk sl
, itu menyatakan bug berikut:
BUGS
It rarely shows contents of current directory.
Jadi, pertanyaannya tetap, ada beberapa kondisi, di mana sl
sebenarnya tidak menunjukkan direktori saat ini?
| | | H |__--------------------| [___] | =| |
, sl menunjukkannya.Jawaban:
Sejauh yang saya tahu, satu-satunya kondisi yang
sl
menunjukkan direktori saat ini adalah ketika Anda salah ketikls
.sumber
sl
mencetak lokomotif uapLemma: Lokomotif uap berisi garis miring ke depan:
Kesimpulan:
sl
tidak pernah menampilkan direktori saat ini. QED.sumber
/
es, yang tidak diizinkan dalam nama file Unix.mkdir -p "$(dirname "$(sl)")"
Anda bisa melakukannyatouch "$(sl)"
. Tentu saja, Anda mungkin menguji batas OS / FS Anda. Dan bersenang-senang membersihkannya./
dan\
, dan artinya sama.H
(misalnya), makasl
memang ditampilkan. Hanya saja itu juga menunjukkan banyak hal lainnya. :-)Ini tambalan untuk memperbaiki bug itu :)
sumber
rand()
"Mengembalikan bilangan integral pseudo-acak dalam kisaran antara 0 dan RAND_MAX," yang bergantung pada perpustakaan tetapi mungkin tidak dapat habis oleh 100.man 3 exec
: "Jika salah satu dari fungsi exec () kembali, kesalahan akan terjadi. Nilai kembali adalah -1, dan variabel global errno akan ditetapkan untuk menunjukkan kesalahan."Anda dapat memeriksa kode sumber di sini - https://github.com/mtoyoda/sl , sayangnya tidak ada pilihan lain selain yang didokumentasikan dan sayangnya tidak ada yang benar-benar akan mencetak nama-nama file.
Jadi sepertinya jawaban @ sfyn adalah yang benar.
sumber
Perhatikan bahwa jawaban I0b0 hanyalah bukti yang
sl
tidak akan pernah menampilkan semua dan hanya daftar direktori saat ini. Namun, ada beberapa situasi di manasl
akan menampilkan daftar direktori saat ini bersama dengan 'informasi' tambahan.Misalnya, di direktori kosong:
akan pada enam baris pertama daftar isi direktori, dan pada 10 baris sisanya akan dengan mudah memperindah daftar ini dengan gambar kereta api (tanpa asap).
sumber
Saya tahu bahwa Lego Stormtroopr telah mencatat tiket sehingga masalah kritis dapat diatasi. Siapa yang tahu banyak waktu yang diperlukan untuk memperbaiki agar tidak diluncurkan?
Karena itu, saya telah memberikan solusi agar dampak karena masalah serius diminimalkan. Anda dapat membuat fungsi shell
sl
yang akan menjalankansl
:Sekarang memohon
sl
akan, secara sporadis, daftar isi direktori.sumber
Jika Anda alias
ls
, itu akan mencetak direktori saat ini - pada kenyataannya, setelah saya berhenti menertawakan lokomotif mesin uap, saya menambahkan itu ke daftar alias saya.sumber
Anda selalu dapat meninjau kode sumber untuk diri sendiri, dan Anda akan melihat dalam kondisi apa pun tidak pernah melakukan
ls
perintah aktual atau menampilkan direktori.https://github.com/mtoyoda/sl
Sumbernya sebenarnya agak sederhana. Bahkan jika Anda "bukan pembuat kode" Anda harus tetap dapat memahami sebagian besar dari itu.
Saya percaya "bug" yang Anda posting di atas benar-benar hanya bercanda (dan menyebabkan diskusi seperti ini lol)
sumber
Ya,
sl
akan bertindak seperti ls jika Anda menyiapkan alias yang sesuai di bash atau shell apa pun yang Anda gunakan!Saya sebenarnya punya beberapa alias untuk ls termasuk
jadi terima kasih atas sarannya - saya akan menambahkan
(Bukannya aku pernah ingat mengetik
sl
tapi aku cenderung ke kitall
ataulh
!)sumber
Anda bisa melakukannya seperti saya juga ...
PS: Sama-sama menghidupkan kembali ini .. mencari "sl linux command" masih membawa utas ini, jadi saya pikir saya akan memberikan jawaban nyata bagaimana saya membuat daftar file ...
sumber