리눅스 명령어 "ls -l [u]*" 가 무슨 뜻인가요?

yellowstone의 이미지

리눅스 와일드 카드 부분에 공부하고 있습니다.
ls -l [u]* 란 명령어를 내리니 다음과 같이 출력이 됩니다.

skymont@X550LA:/$ ls -l [u]*
합계 132
drwxr-xr-x   2 root root 53248  914 19:41 bin
drwxr-xr-x   2 root root  4096  97 23:50 games
drwxr-xr-x  34 root root 20480  99 00:28 include
drwxr-xr-x 166 root root 20480  913 20:01 lib
drwxr-xr-x  10 root root  4096  417 10:21 local
drwxr-xr-x   2 root root 12288  913 19:57 sbin
drwxr-xr-x 300 root root 12288  911 02:11 share
drwxr-xr-x  12 root root  4096  99 00:29 src

와일드카드에서 대괄호 해석이 좀 어렵네요
ls -l [u]* 란 명령어가 무슨 뜻이고
ls -l [u] 란 명령어랑 어떤 차이점이 있나요?

답변 부탁드립니다.

김정균의 이미지

음 실행 결과가 좀 이상하네요. 혹시 실행이 "ls -l [u] *"로 된 것 같습니다.

일단은

"ls [u]*" 는 "ls u*"와 동일합니다. 대괄호를 사용하는 경우는

"ls [uU]*" 와 같이 사용하는데, 이 의미는 u* 또는 U* 와 동일합니다.

예를 들어서 thank.txt와 THANK.txt 또는 ThanK.txt를 리스팅 하고 싶다면 다음과 같이 할 수 있습니다.

ls [tT][hH][aA][nN][kK].txt

yellowstone의 이미지

답변 감사합니다.
참고로 우분투 리눅스 14.10 사용 하고 있습니다.
루트라는 최상위 디렉토리에서 "ls [u]*" 명령을 내리면
skymont@X550LA:/$ ls [u]*

bin, games, lib, local, sbin, share, src 과 같은 디렉터리가 출력 됩니다.

"ls [u] *" 로 명령을 내리면 다음과 같이 출력됩니다.

skymont@X550LA:/$ ls [u] *
ls: [u]에 접근할 수 없습니다: 그런 파일이나 디렉터리가 없습니다
initrd.img initrd.img.old vmlinuz vmlinuz.old

backup:
grub.cfg inittab login.defs

bin:
bash findmnt netstat static-sh
bsd-csh fuser nisdomainname stty
bunzip2 fusermount ntfs-3g su
busybox getfacl ntfs-3g.probe sync
bzcat grep ntfs-3g.secaudit systemctl
bzcmp gunzip ntfs-3g.usermap systemd
bzdiff gzexe ntfscat systemd-ask-password
bzegrep gzip ntfsck systemd-inhibit
bzexe hostname ntfscluster systemd-machine-id-setup
bzfgrep ip ntfscmp systemd-notify
bzgrep journalctl ntfsdump_logfile systemd-tmpfiles
bzip2 kbd_mode ntfsfix systemd-tty-ask-password-agent
bzip2recover kill ntfsinfo tailf
bzless kmod ntfsls tar
bzmore ksh ntfsmftalloc tcsh
cat ksh93 ntfsmove tempfile
chacl less ntfstruncate touch
chgrp lessecho ntfswipe true
chmod lessfile open udevadm
chown lesskey openvt ulockmgr_server
chvt lesspipe pidof umount
cp ln ping uname
cpio loadkeys ping6 uncompress
csh login plymouth unicode_start
dash loginctl plymouth-upstart-bridge vdir
date lowntfs-3g ps vmmouse_detect
dbus-cleanup-sockets ls pwd wdctl
dbus-daemon lsblk rbash which
dbus-uuidgen lsmod readlink whiptail
dd machinectl red ypdomainname
df mkdir rm zcat
dir mknod rmdir zcmp
dmesg mktemp rnano zdiff
dnsdomainname more run-parts zegrep
domainname mount running-in-container zfgrep
dumpkeys mountpoint sed zforce
echo mt setfacl zgrep
ed mt-gnu setfont zless
efibootmgr mv setupcon zmore
egrep nano sh znew
false nc sh.distrib
fgconsole nc.openbsd sleep
fgrep netcat ss

boot:
System.map-3.11.0-12-generic config-3.11.0-18-generic memtest86+.bin
System.map-3.11.0-18-generic config-3.11.0-19-generic memtest86+.elf
System.map-3.11.0-19-generic config-3.13.0-35-generic memtest86+_multiboot.bin
System.map-3.13.0-35-generic config-3.16.0-13-generic vmlinuz-3.11.0-12-generic
System.map-3.16.0-13-generic config-3.16.0-14-generic vmlinuz-3.11.0-18-generic
System.map-3.16.0-14-generic efi vmlinuz-3.11.0-18-generic.efi.signed
abi-3.11.0-12-generic grub vmlinuz-3.11.0-19-generic
abi-3.11.0-18-generic initrd.img-3.11.0-12-generic vmlinuz-3.11.0-19-generic.efi.signed
abi-3.11.0-19-generic initrd.img-3.11.0-18-generic vmlinuz-3.13.0-35-generic
abi-3.13.0-35-generic initrd.img-3.11.0-19-generic vmlinuz-3.16.0-13-generic
abi-3.16.0-13-generic initrd.img-3.13.0-35-generic vmlinuz-3.16.0-13-generic.efi.signed
abi-3.16.0-14-generic initrd.img-3.16.0-13-generic vmlinuz-3.16.0-14-generic
config-3.11.0-12-generic initrd.img-3.16.0-14-generic vmlinuz-3.16.0-14-generic.efi.signed

cdrom:

dev:
block kvm ptmx sda1 tty18 tty39 tty6 ttyS22 vcs2
bsg log pts sda2 tty19 tty4 tty60 ttyS23 vcs3
bus loop-control ram0 sda3 tty2 tty40 tty61 ttyS24 vcs4
cdrom loop0 ram1 sg0 tty20 tty41 tty62 ttyS25 vcs5
cdrw loop1 ram10 sg1 tty21 tty42 tty63 ttyS26 vcs6
char loop2 ram11 shm tty22 tty43 tty7 ttyS27 vcsa
console loop3 ram12 snapshot tty23 tty44 tty8 ttyS28 vcsa1
core loop4 ram13 snd tty24 tty45 tty9 ttyS29 vcsa2
cpu loop5 ram14 sr0 tty25 tty46 ttyS0 ttyS3 vcsa3
cpu_dma_latency loop6 ram15 stderr tty26 tty47 ttyS1 ttyS30 vcsa4
disk loop7 ram2 stdin tty27 tty48 ttyS10 ttyS31 vcsa5
dri mapper ram3 stdout tty28 tty49 ttyS11 ttyS4 vcsa6
dvd mcelog ram4 tty tty29 tty5 ttyS12 ttyS5 vga_arbiter
dvdrw media0 ram5 tty0 tty3 tty50 ttyS13 ttyS6 video0
ecryptfs mei ram6 tty1 tty30 tty51 ttyS14 ttyS7 zero
fb0 mem ram7 tty10 tty31 tty52 ttyS15 ttyS8
fd net ram8 tty11 tty32 tty53 ttyS16 ttyS9
full network_latency ram9 tty12 tty33 tty54 ttyS17 ttyprintk
fuse network_throughput random tty13 tty34 tty55 ttyS18 uinput
hidraw0 null rfkill tty14 tty35 tty56 ttyS19 urandom
hpet port rtc tty15 tty36 tty57 ttyS2 v4l
input ppp rtc0 tty16 tty37 tty58 ttyS20 vcs
kmsg psaux sda tty17 tty38 tty59 ttyS21 vcs1

etc:
NetworkManager emacs lsb-release rpc
UPower environment ltrace.conf rsyslog.conf
X11 esound machine-id rsyslog.d
acpi firefox magic samba
adduser.conf fonts magic.mime sane.d
adjtime fstab mailcap securetty
alternatives fuse.conf mailcap.order security
anacrontab gai.conf manpath.config selinux
apg.conf gconf mime.types sensors.d
apm gdb mke2fs.conf sensors3.conf
apparmor ghostscript modprobe.d services
apparmor.d gnome modules sgml
apport gnome-app-install modules-load.d shadow
apt gnome-settings-daemon mplayer shadow-
aptdaemon groff mtab shells
at-spi2 group mtab.fuselock signon-ui
avahi group- mtools.conf signond.conf
avserver.conf grub.d nanorc skel
bash.bashrc gshadow netscsid.conf speech-dispatcher
bash_completion gshadow- network ssh
bash_completion.d gss networks ssl
bindresvport.blacklist gtk-2.0 newt subgid
binfmt.d gtk-3.0 nsswitch.conf subgid-
bluetooth hdparm.conf obex-data-server subuid
brlapi.key host.conf openal subuid-
brltty hostname opt sudoers
brltty.conf hosts os-release sudoers.d
ca-certificates hosts.allow pam.conf sysctl.conf
ca-certificates.conf hosts.deny pam.d sysctl.d
ca-certificates.conf.dpkg-old hp papersize systemd
calendar ifplugd passwd terminfo
chatscripts init passwd- thermald
colord.conf init.d pcmcia thunderbird
compizconfig initramfs-tools perl timezone
complete.tcsh inputrc pki timidity
console-setup insserv pm tmpfiles.d
cracklib insserv.conf pnm2ppa.conf ts.conf
cron.d insserv.conf.d polkit-1 ucf.conf
cron.daily iproute2 popularity-contest.conf udev
cron.hourly issue ppp udisks2
cron.monthly issue.net printcap ufw
cron.weekly kbd profile update-manager
crontab kernel profile.d update-motd.d
csh kernel-img.conf protocols update-notifier
csh.cshrc kerneloops.conf pulse updatedb.conf
csh.login ld.so.cache python upstart-xsessions
csh.logout ld.so.conf python2.7 usb_modeswitch.conf
cups ld.so.conf.d python3 usb_modeswitch.d
cupshelpers ldap python3.4 vdpau_wrapper.cfg
dbus-1 legal rc.local vga
dconf libaudit.conf rc0.d vim
debconf.conf libnl-3 rc1.d vtrgb
debian_version libpaper.d rc2.d wgetrc
default libreoffice rc3.d wildmidi
deluser.conf lightdm rc4.d wodim.conf
depmod.d lintianrc rc5.d wpa_supplicant
dhcp locale.alias rc6.d xdg
dictionaries-common localtime rcS.d xml
dnsmasq.d logcheck remote-login-service.conf xul-ext
doc-base login.defs resolv.conf yum
dpkg logrotate.conf resolvconf zsh_command_not_found
drirc logrotate.d rmt

export:
home

home:
skymont user1 user2

hosting:

lib:
apparmor init libip6tc.so.0.1.0 modprobe.d systemd
brltty klibc-P2s_k-gf23VtrGgO2_4pGkQgwMY.so libiptc.so.0 modules sysvinit
cpp libcryptsetup.so.4 libiptc.so.0.0.0 modules-load.d terminfo
crda libcryptsetup.so.4.5.0 libxtables.so.10 plymouth udev
firmware libip4tc.so.0 libxtables.so.10.0.0 recovery-mode ufw
hdparm libip4tc.so.0.1.0 linux-sound-base resolvconf x86_64-linux-gnu
ifupdown libip6tc.so.0 lsb security xtables

lib64:
ld-linux-x86-64.so.2
ls: lost+found 디렉터리를 열 수 없음: 허가 거부

media:
skymont

mnt:

opt:

proc:
1 14 168 2007 2092 2476 283 42 68 asound kcore slabinfo
10 143 17 2011 2096 2485 29 43 69 buddyinfo key-users softirqs
1005 144 1744 2014 21 2489 3 44 7 bus keys stat
1009 145 18 2016 2105 25 30 443 70 cgroups kmsg swaps
1016 146 1806 2018 2117 2512 31 445 71 cmdline kpagecount sys
1019 147 1824 2021 2152 2542 33 45 711 consoles kpageflags sysrq-trigger
1023 148 1828 2022 22 2548 333 46 719 cpuinfo loadavg sysvipc
1061 149 19 2027 2281 2573 338 463 737 crypto locks timer_list
1065 15 1908 2028 23 2578 34 47 776 devices mdstat timer_stats
1067 150 1919 2037 2318 2584 35 479 785 diskstats meminfo tty
1068 151 1945 2039 2319 26 36 48 792 dma misc uptime
1079 152 1950 2047 2325 2601 37 491 8 driver modules version
11 1529 1951 2049 2326 2605 38 5 818 execdomains mounts version_signature
1188 153 1956 2056 2328 2614 39 50 888 fb mtrr vmallocinfo
12 1540 1970 2057 2329 2615 4 52 9 filesystems net vmstat
1215 1543 1984 2059 2334 2698 40 53 90 fs pagetypeinfo zoneinfo
1225 155 1989 2063 2346 27 401 54 901 interrupts partitions
1293 16 2 2065 24 271 404 552 91 iomem sched_debug
1294 1602 20 2066 2451 2726 405 66 97 ioports schedstat
13 1662 2002 2067 2460 2739 41 665 997 irq scsi
1305 167 2004 2068 2468 28 413 67 acpi kallsyms self
ls: root 디렉터리를 열 수 없음: 허가 거부

run:
NetworkManager initramfs pppconfig udisks2
acpid.pid kerneloops.pid resolvconf upstart-file-bridge.pid
acpid.socket lightdm rsyslogd.pid upstart-socket-bridge.pid
alsa lightdm.pid sdp upstart-udev-bridge.pid
avahi-daemon lock sendsigs.omit.d user
cgmanager motd.dynamic shm utmp
crond.pid network systemd uuidd
crond.reboot network-interface-security systemd-shim-state wpa_supplicant
cups plymouth thermald
dbus pm-utils udev

sbin:
MAKEDEV fsck.msdos mkfs rmmod
acpi_available fsck.nfs mkfs.bfs route
agetty fsck.vfat mkfs.cramfs rtacct
alsa fsfreeze mkfs.ext2 rtmon
apm_available fstab-decode mkfs.ext3 runlevel
apparmor_parser fstrim mkfs.ext4 runuser
badblocks gdisk mkfs.ext4dev setcap
blkdiscard getcap mkfs.fat setvtrgb
blkid getpcaps mkfs.minix sfdisk
blockdev getty mkfs.msdos sgdisk
bridge halt mkfs.ntfs shadowconfig
brltty hdparm mkfs.vfat shutdown
brltty-setup hwclock mkhomedir_helper slattach
capsh ifconfig mkntfs start
cfdisk ifdown mkswap start-stop-daemon
cgdisk ifquery mntctl startpar
cgm-release-agent ifup modinfo startpar-upstart-inject
cgmanager init modprobe status
cgproxy initctl mount.fuse stop
chcpu insmod mount.lowntfs-3g sulogin
crda installkernel mount.ntfs swaplabel
cryptsetup ip mount.ntfs-3g swapoff
cryptsetup-reencrypt ip6tables mountall swapon
ctrlaltdel ip6tables-restore nameif switch_root
debugfs ip6tables-save ntfsclone sysctl
depmod ipmaddr ntfscp tc
dhclient iptables ntfslabel telinit
dhclient-script iptables-restore ntfsresize tune2fs
dmsetup iptables-save ntfsundelete udevadm
dosfsck iptunnel on_ac_power udevd
dosfslabel isosize pam_extrausers_chkpwd umount.udisks
dumpe2fs iw pam_extrausers_update umount.udisks2
e2fsck iwconfig pam_tally unix_chkpwd
e2image iwevent pam_tally2 unix_update
e2label iwgetid parted upstart
e2undo iwlist partprobe upstart-dbus-bridge
ethtool iwpriv pccardctl upstart-event-bridge
fatlabel iwspy pivot_root upstart-file-bridge
fdisk kbdrate plipconfig upstart-local-bridge
findfs killall5 plymouthd upstart-socket-bridge
fixparts ldconfig poweroff upstart-udev-bridge
fsck ldconfig.real rarp ureadahead
fsck.cramfs logsave raw veritysetup
fsck.ext2 losetup reboot wipefs
fsck.ext3 lsmod regdbdump wpa_action
fsck.ext4 lspcmcia reload wpa_cli
fsck.ext4dev mii-tool resize2fs wpa_supplicant
fsck.fat mkdosfs resolvconf xtables-multi
fsck.minix mke2fs restart

skel:

srv:

sys:
block bus class dev devices firmware fs hypervisor kernel module power

tmp:
unity_support_test.0

usr:
bin games include lib local sbin share src

var:
backups cache crash lib local lock log mail metrics opt run spool tmp

yellowstone의 이미지

하나가 이해가 안가는게 있는데요.
루트라는 최상위 디렉토리에서 "ls -l [u]*" 명령을 내리면
출력되는 디렉토리가 "[u]" 에 포함되지 않은 이름을 가진 디렉터리들인 "bin, games, lib, local, sbin, share, src"가 왜 출력되는지 모르겠습니다.
하위 폴더에 알파벳 u와 포함 되어 있는 이름을 가진디렉토리나 파일이 있어서 출력 되는 걸까요?
"[ ]"가 어렵네요 ;;

세이군의 이미지


/ 디렉토리에서 #ls -l [u]* 명령을 실행하면 / 디렉토리에서 u로 시작하는 폴더를 찾습니다.
기본적으로 u로 시작하는 폴더는 usr이 있고 #ls -l usr 을 실행한 것과 동일한 결과를 얻습니다.

그런데 #ls -l [u] 명령을 실행하면 / 디렉토리에 있는 u 라는 파일 또는 디렉토리를 찾게 되는데
해당 파일 또는 디렉토리는 기본 설정상으로 존재하지 않는 폴더 나 디렉토리입니다. 따라서 다음과 같이 표시됩니다.

ls: [u]에 접근할 수 없습니다: 그런 파일이나 디렉터리가 없습니다

김정균의 이미지

ㅎㅎ / 에서 실행했다는 것이 함정이네요 :-)

/에서 ls [u]* 는 ls /usr 와 동일한 결과이니, /usr 안에 있는 파일,디렉토리들을 나열할테니까요 ㅋㅋ

순간 저도 ubuntu의 기본쉘이 dash라서 그런가 착각했네요

yellowstone의 이미지

이제 이해가 갑니다.
답변 감사합니다. ^^
그런데 우분투 기본쉘이 dash(?)가 아니고 bash 아닌가요?;;

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.