나무모에 미러 (일반/어두운 화면)
최근 수정 시각 : 2025-02-05 13:33:02

coreutils

GNU coreutils에서 넘어옴
<colcolor=#fff><bgcolor=#a32d2a> GNU Core Utilities
파일:coreutils.png
<colbgcolor=#a32d2a> 종류 CLI 유틸리티 패키지
개발 GNU
출시 2002년 9월 1일[1]
언어 C 언어
플랫폼 GNU/Linux, BSD
안정 버전 v9.6
라이선스 v6.10 이하: GPLv2
v6.10 이상: GPLv3
링크 파일:홈페이지 아이콘.svg Git 파일:GitHub 아이콘.svg파일:GitHub 아이콘 화이트.svg
1. 개요2. 역사3. 목록4. 대체제5. 기타

[clearfix]

1. 개요

GNU core utilities

GNU가 개발하는 POSIX 호환 CLI 유틸리티 패키지.

2. 역사

coreutils는 원래 하나의 패키지가 아니었다. 본질적으로는 기존의 GNU에 개별적으로 존재하던 fileutils, textutils, 그리고 shellutils 등을 합쳐(merge) 하나의 패키지로 재구성한 것으로, 그 최초의 기원은 fileutils로 여겨진다. 다만 GNU의 모든 -utils가 coreutils로 합쳐진 것은 아니고, 현재까지도 findutils, binutils, diffutils 등은 별도 패키지로 남아있다.

1990년 2월 8일 데이비드 맥켄지가 POSIX 표준과 호환되는 16개[2]의 파일 관련 유틸리티를 포함하고 있는 GNU fileutils의 첫 버전을 릴리즈했다. 최초 버전은 BSD용으로 제작되었으나, 곧이어 System V포팅되었다.#

이어서 맥켄지는 1991년 7월 16일 20개[3]의 셸 스크립팅용 유틸리티를 포함한 shellutils를 릴리즈한다.#

같은 해 1991년 8월 22일 맥켄지는 기존의 fileutils에서 텍스트 프로세싱 관련 유틸리티만 담은 textutils를 분리하고, 두 패키지에 새 명령어들을 대거 추가했다.#

이후 2002년 9월 1일 GNU는 위 세 프로젝트를 합쳐 coreutils라는 하나의 패키지로 묶게 된다.#

2007년 7월 23일, 라이선스를 GPLv2에서 GPLv3로 변경하였다.#

3. 목록

#
<rowcolor=#fff> 명령어 비고
[
arch
b2sum
base32
base64
basename
cat
chcon
chgrp
chmod
chown
chroot
cksum
comm
coreutils--coreutils-prog 옵션으로 coreutils 소속 프로그램을 간접적으로 실행할 수 있다. busybox 등 여러 버전의 utils를 설치했거나 패키지 내 다른 툴들이 $PATH로 들어가 있지 않을 때 유용하게 사용할 수 있다.
cp
csplit
cut
date
dd
df
dir
dircolors
dirname
du
echo
env
expand
expr
factor
false
fmt
fold
groups
head
hostid
hostname
id
install
join
kill
link
ln
logname
ls
md5sum
mkdir
mkfifo
mknod
mktemp
mv
nice
nl
nohup
nproc
numfmt
od
paste
pathchk
pinky
pr
printenv
printf
ptx
pwd
readlink
realpath
rm
rmdir
runcon
seq
sha1sum
sha224sum
sha256sum
sha384sum
sha512sum
shred
shuf
sleep
sort
split
stat
stdbuf
stty
sum
sync
tac
tail
tee
test
timeout
touch
tr
true
truncate
tsort
tty
uname
unexpand
uniq
unlink
uptime
users
vdir
wc
who
whoami
yes

4. 대체제

유명한 대체제 중 하나는 BusyBox로, 무려 700KiB 언저리밖에 하지 않는 크기로 인해 임베디드 및 클라우드 시장에서 다소 무겁다고 느껴지는 coreutils에 비해 선호받는 편.# Alpine Linux의 경우 busybox를 기본적으로 내장한다.

coreutils 패키지의 모든 툴들을 Rust로 재작성한 크로스 플랫폼 대체제 uutils가 존재한다.#

5. 기타


[1] coreutils 자체가 여러 존재하던 utils 패키지를 통합하며 시작된 것이라 최초 개발일이라 보기는 힘들다. 역사 문단 참고.[2] cat, chmod, cmp, cp, dd, dir, du, head, ln, ls, mkdir, mv, rm, rmdir, tail, vdir[3] basename, date, dirname, env, expr, groups, id, logname, pathchk, printenv, printf, sleep, tee, tty, whoami, yes, nice, nohup, stty, uname