วิธีทำให้สี `ls 'เป็นสีเริ่มต้นโดยไม่ต้องตั้งค่านามแฝง


44

ฉันไม่ต้องการนามแฝง ( alias ls='ls --color') และฉันได้ตั้งไว้ก่อนหน้านี้ขึ้นบน Mac OSX ใช้ตัวแปรสภาพแวดล้อมที่น่าอัศจรรย์นำสีให้CLICOLOR lsตอนนี้ฉันอยู่บน Linux (Arch x86-64) ด้วยxtermและการตั้งค่าพื้นฐานจริง ๆ และฉันไม่สามารถสร้างlsสีเอาต์พุต (โดยใช้lsคำต่อคำ) ฉันจะได้สีเมื่อใช้--colorสวิตช์

ไม่มีวิธีที่จะบรรลุเป้าหมายนี้หรือไม่? การปฏิบัติตาม POSIX น่าจะดี :-)

คำตอบ:


65

ไม่มีทาง: หน้า ls man จะแสดงให้คุณเห็นว่าการตั้งค่าเริ่มต้น (สำหรับ --color) คือ 'none' - เช่น ไม่เคยใช้สี

เหตุผลใดที่คุณไม่ต้องการใช้ชื่อแทน ฉันเป็นผู้ใช้ Red Hat ที่กำลังกู้คืนดังนั้นทุกครั้งที่ฉันติดตั้งการแจกจ่ายใหม่ฉันได้ตั้งชื่อแทนสามแอลเป็นดังนี้:

## Colorize the ls output ##
alias ls='ls --color=auto'

## Use a long listing format ##
alias ll='ls -la'

## Show hidden files ##
alias l.='ls -d .* --color=auto'

2
ไม่มีเหตุผลที่ฉันทำไม่ได้ - ฉันใช้ Mac OSX ในวันก่อนและสนับสนุนสิ่งCLICOLORที่ฉันคิดว่าเป็นมาตรฐาน (คุณมักจะคิดว่าสิ่งเหล่านี้เป็นมาตรฐาน) และฉันก็คิดเสมอว่าชื่อแทนเป็นโซลูชันติดตั้งเพิ่มเติม แต่พวกเขาจะทำได้ดี :-)
พฤศจิกายน

16
ใน Mac OSX คุณสามารถใช้alias ls='ls -G'
Gal Bracha

2
เพิ่มalias grep='grep --color'ไปยัง;)
AmirHossein

รวมพวกเขาเข้าด้วยกันalias ll='ls -la --color=auto'
HackSlash

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.