Linux touch λͺ λ Ήμ΄λ νμΌ μμ±λΆν° μ κ·Ό μκ°·μμ μκ° λ³κ²½κΉμ§ λ€μν μμ μ μννλ€. κΈ°μ΄ μ¬μ©λ², μ΅μ , μ€μ μ€ν¬λ¦½νΈ νμ©κΉμ§ μλ²½ κ°μ΄λ.
Linuxμμ κ°λ°μ νλ€ λ³΄λ©΄ “νμΌμ΄ μμΌλ©΄ λ§λ€κ³ , μμΌλ©΄ λ μ§λ₯Ό μ
λ°μ΄νΈνκ³ …” κ°μ μμ
μ΄ λμμμ΄ λ°λ³΅λλ€.
λ‘κ·Έ νμΌμ μ΄κΈ°ννκ±°λ, λΉλ κ³Όμ μμ νΉμ νμμ€ν¬νλ₯Ό μ€μ νκ±°λ, cron μ€μΌμ€λ¬μμ μν νμΌμ λ¨κΈ°λ λ± μλ§μ μμ
μ μ€μ¬μ touch λͺ
λ Ήμ΄κ° μλ€.
λ§μ μ¬λλ€μ touchλ₯Ό “νμΌμ μμ±νλ λͺ
λ Ήμ΄” μ λλ‘ μκ³ μμ§λ§,
μ νν λ§νλ©΄ νμΌμ μκ° μ 보λ₯Ό μ μ΄νλ νμμ€ν¬ν μ‘°μ λꡬμ΄λ€.
μ΄ κΈμμλ touch λͺ λ Ήμ΄μ κΈ°μ΄ → κ³ κΈ μ΅μ → μ€λ₯ ν΄κ²° → μλν νμ© → νμΌ μμ€ν κ΄μ λΆμ → μ€μ μλ리μ€κΉμ§ μμ μ 리νλ€.
1. touch λͺ λ Ήμ΄κ° μ€μν μ΄μ
touchλ₯Ό μ¬μ©νλ©΄ λ€μμ ν΄κ²°ν μ μλ€:
- νμΌμ΄ μμΌλ©΄ μμ νκ² μμ±
- νμΌμ΄ μμ κ²½μ° atime/mtime μλ μ λ°μ΄νΈ
- μνλ λ μ§·μκ°μΌλ‘ μμ μ€μ
- Makefile·CI/CDμμ λΉλ μ¬μμ±μ μ λ
- μ€ν¬λ¦½νΈμμ μν νμΌ / νλκ·Έ νμΌ μμ±
- λ°±μ ·λ°°ν¬ μμ€ν μμ νμμ€ν¬ν ν μ€νΈ
μ¦, touchλ λ¨μ νμΌ μμ± λͺ λ Ήμ΄ μλλΌ Linux μκ° κ΄λ¦¬μ ν΅μ¬ λꡬμ΄λ€.
2. Linux νμΌμ 3κ°μ§ νμμ€ν¬ν
νμΌ νμμ€ν¬ν ꡬ쑰

Linux λͺ¨λ νμΌμ λ€μ μκ° μ 보λ₯Ό κ°μ§λ€.
| νλͺ© | μλ―Έ |
| atime (Access Time) | νμΌμ μ½μ μκ° |
| mtime (Modify Time) | νμΌ λ΄μ©μ μμ ν μκ° |
| ctime (Change Time) | νμΌ λ©νλ°μ΄ν°κ° λ°λ μκ° (chmod, chown λ±) |
β touchκ° λ³κ²½νλ μκ°
- atime
- mtime
β touchλ‘ λ³κ²½ν μ μλ μκ°
- ctime → μμ€ν μ΄ μλμΌλ‘ λ³κ²½
μ:
touch -m test.txt
- mtime λ³κ²½
- atime λ³κ²½ μμ
- ctimeμ “λ©νλ°μ΄ν° λ³κ²½”μΌλ‘ μΈν΄ μλ κ°±μ λ¨
3. touch κΈ°λ³Έ μ¬μ©λ²
κΈ°λ³Έ λ¬Έλ²μ λ§€μ° κ°λ¨νλ€.
touch νμΌμ΄λ¦
μ:
touch newfile.txt
μ΄ λͺ λ Ήμ λμμ λ κ°μ§:
- νμΌμ΄ μμΌλ©΄ μ νμΌ μμ±
- νμΌμ΄ μ΄λ―Έ μμΌλ©΄ mtimeκ³Ό atime μ λ°μ΄νΈ
1) νμΌ μμ± μμ
- λ¨μΌ νμΌ μμ±
touch test.log
- μ¬λ¬ νμΌ μμ±
touch file1 file2 file3
- λλ ν°λ¦¬ νμμ νμΌ μμ±
touch logs/error.log
(λΆλͺ¨ λλ ν°λ¦¬κ° μμΌλ©΄ μ€ν¨)

4. touch μ΅μ μ 리
touch λͺ λ Ήμ΄λ λ¨μνμ§λ§ μ΅μ μ κΉκ² μλ©΄ ν¨μ¬ κ°λ ₯ν κΈ°λ₯μ νμ©ν μ μλ€.
1) -a (μ κ·Ό μκ°λ§ λ³κ²½)
touch -a sample.txt
νμΌμ atimeλ§ λ°λκ³ mtimeμ μ μ§λλ€.
2) -m (μμ μκ°λ§ λ³κ²½)
touch -m sample.txt
mtimeλ§ λ³κ²½νκ³ atimeμ κ·Έλλ‘ λλ€.
3) -t (μμμ μκ°μΌλ‘ μ€μ )
νΉμ λ μ§μ μκ°μΌλ‘ νμΌμ νμμ€ν¬νλ₯Ό μ€μ ν μ μλ€.
touch -t 202501011230 file.txt
μ΄ μλ―Έλ:
- 2025λ 01μ 01μΌ
- 12μ 30λΆ
μ¦, touch -t yyyymmddhhmm νμμ΄λ€.
4) -d (λ μ§λ₯Ό λ¬Έμμ΄λ‘ μ λ ₯)
-tλ μ«μ ν¬λ§·λ§ μ§μνμ§λ§, -dλ λ¬Έμμ΄μ μ§μνλ€.
touch -d "2025-11-27 09:30:00" file.txt
touch -d "yesterday" file.txt
touch -d "next monday" file.txt
μ΄ μ΅μ μ ν΅ν΄ μμ€ν λ‘κ·Έ ν μ€νΈ, λ°±μ μ€ν¬λ¦½νΈ κ²μ¦ λ± λ€μν μλ리μ€μ νμ©ν μ μλ€.

5) -r (λ€λ₯Έ νμΌμ μκ° μ 보 볡μ¬)
touch -r src.txt dest.txt
src.txtμ μκ° μ 보(atime, mtime)λ₯Ό dest.txtμ κ·Έλλ‘ μ μ©νλ€.
νμΌ λ³΅μ¬ ν μκ° μ 보λ₯Ό μλ³Έκ³Ό λμΌνκ² μ μ§ν λ λ§μ΄ μ°μΈλ€.
6) -c (νμΌμ΄ μμΌλ©΄ μμ±νμ§ μμ)
κΈ°λ³Έ touchλ νμΌμ΄ μμΌλ©΄ μλ‘ λ§λ λ€.
νμ§λ§ -c μ΅μ
μ μ¬μ©νλ©΄ νμΌμ΄ μ‘΄μ¬ν λλ§ μκ° λ³κ²½μ μννλ€.
touch -c nothing.log
μμ΄λ μλ¬λ₯Ό λ΄μ§ μκ³ μ‘°μ©ν 무μνλ€.
5. touch μ¬μ© μ μμ£Ό 보λ μ€λ₯ & ν΄κ²°
1) Permission denied
κΆν λ¬Έμ μΌ λ:
sudo touch /var/log/custom.log
λλ μμ κΆ λ³κ²½:
2) No such file or directory
λΆλͺ¨ λλ ν°λ¦¬κ° μμ λ λ°μνλ€.
μ)
touch logs/error.log
→ logs λλ ν°λ¦¬κ° μμΌλ©΄ μλ¬
ν΄κ²°:
mkdir -p logs
touch logs/error.log

6. λ€λ₯Έ λͺ λ Ήμ΄μμ κ΄κ³(touch vs rm vs rmdir)
| μμ | μ ν©ν λͺ λ Ήμ΄ |
| νμΌ μμ± | touch |
| νμΌ μμ | rm |
| λΉμ΄ μλ λλ ν°λ¦¬ μμ | rmdir |
| λλ ν°λ¦¬ μ 체 μμ | rm -rf |
| λ μ§ μ΄κΈ°ν | touch |
μ 리:
- touchλ νμΌ μμ± + μκ° μ μ΄
- rm/rmdirλ μμ
- μν μ΄ λͺ νν λΆλ¦¬λμ΄ μμ΄ μμ€ν κ΄λ¦¬κ° λ λͺ νν΄μ§λ€.
7. μλν μ€ν¬λ¦½νΈμμ touchλ₯Ό νμ©νλ λ€μν μ¬λ‘
touchλ μ€ν¬λ¦½νΈμμ λΉλ²νκ² νμ©λλ€. λ€μμ μ€μ μ¬λ‘μ΄λ€.
1) λ‘κ·Έ νμΌ μλ μμ± μ€ν¬λ¦½νΈ
#!/bin/sh
LOGFILE=/var/log/myapp.log
touch $LOGFILE
echo "$(date) - Start Logging" >> $LOGFILE
2) λΉλ μλ£ μκ° κΈ°λ‘
touch build_done.timestamp
CI/CD νμ΄νλΌμΈμμ “μ΅κ·Ό λΉλ μκ°”μ νμνλ λ° μ μ©νλ€.
3). rc.d μλΉμ€ μν νμΌ κΈ°λ‘
OpenWrt, Linux init μ€ν¬λ¦½νΈμμ μμ£Ό μ¬μ©νλ ν¨ν΄:
touch /tmp/service_started
νλ‘μΈμ€κ° μ€νλ μμ μ λ¨κΈΈ μ μλ€.
4) cron μ€μΌμ€λ¬ μ μ΄
cronμμ “νμΌ μκ° κΈ°μ€μΌλ‘ λμ”νλλ‘ μ€μ νλ κ²½μ°κ° μλ€.
μ)
touch /tmp/updated.flag
μ΄ νμΌμ μκ° λ³νλ₯Ό νΈλ¦¬κ±°λ‘ λ€λ₯Έ μ€ν¬λ¦½νΈλ₯Ό μ€νν μ μλ€.
5) λ°±μ μ€ν¬λ¦½νΈ ν μ€νΈ
κ³Όκ±° λ μ§ νμΌμ μλ μμ±νμ¬ λ°±μ μ μ± μ΄ μ μλνλμ§ νμΈ:
touch -d "2 days ago" old_file.txt

8. touchμ νμΌ μμ€ν νμμ€ν¬ν ꡬ쑰 μ¬μΈ΅ λΆμ
Linux νμΌ μμ€ν μ λ€μκ³Ό κ°μ μκ° μ 보λ₯Ό μ μ§νλ€.
- atime: νμΌμ μ½μμ λ κ°±μ
- mtime: νμΌ λ³κ²½ μ κ°±μ
- ctime: νμΌ λ©νλ°μ΄ν° λ³κ²½ μ κ°±μ
touchλ μ΄ μ€ atimeκ³Ό mtimeλ§ μ»¨νΈλ‘€ κ°λ₯νλ©°,
ctimeμ μμ€ν
μ΄ μλμΌλ‘ κΈ°λ‘νλ€.
μλ₯Ό λ€μ΄,
touch -m file.txt
μ μ€ννλ©΄:
- mtimeμ λ³κ²½λ¨
- atimeμ λ³κ²½λμ§ μμ
- ctimeμ λ©νλ°μ΄ν° λ³κ²½μΌλ‘ μΈν΄ μλ κ°±μ λ¨
μ¦, touchλ‘ ctime μ‘°μμ μ λ λΆκ°λ₯νλ€.
9. touchλ₯Ό νμ©ν μ€μ μλλ¦¬μ€ λͺ¨μ
1) μ κ· νλ‘μ νΈ μ΄κΈ° μΈν
λΉ μ€μ νμΌμ μ¬λ¬ κ° λ§λ€ λ:
touch config.ini README.md .env
2) Makefileμμ μμ‘΄μ± μ μ΄
Makefileμ νμΌμ mtimeμ κΈ°λ°μΌλ‘ λΉλ μ¬λΆλ₯Ό νλ¨νλ€.
touch src/main.c
make
μ΄λ° λ°©μμΌλ‘ μ¬λΉλλ₯Ό μ λν μ μλ€.

3) λΉλ μμ± μκ° μ£ΌκΈ°ν
μ¬λ¬ μμ€ν κ° λΉλ νμ μ μ©μ ν΅μΌνκ³ μΆλ€λ©΄:
touch -t 202511270945 buildroot/
4) λ‘κ·Έ νμΌ μ΄κΈ°ν
> access.log
touch access.log
5) Linux ν¨ν€μ§ λ°°ν¬ ν μ€νΈ
λ°°ν¬ λμ€ νμΌ λ μ§λ₯Ό νΉμ κ°μΌλ‘ λ§μΆ°μΌ νλ κ²½μ°:
touch -d "2025-01-01 00:00:00" release_info
10. μμ£Ό 묻λ μ§λ¬Έ(FAQ)
Q1. touch λͺ λ Ήμ΄λ νμΌμ΄ μμ λμ μμ λ μ΄λ»κ² λμνλμ?
touchμ κ°μ₯ κΈ°λ³Έμ μΈ λμμ λ€μ λ κ°μ§λ‘ λλλ€.
- νμΌμ΄ μμΌλ©΄ μ νμΌ μμ±
- νμΌμ΄ μμΌλ©΄ atime/mtime μκ°λ§ κ°±μ
μ¦, Linux touch λͺ
λ Ήμ΄λ “νμΌμ΄ μμΌλ©΄ λ§λ€κ³ , μμΌλ©΄ μκ°μ λ°κΎΌλ€”λ μμΉμ λ°λ₯Έλ€.
μ΄ νΉμ± λλ¬Έμ μλν μ€ν¬λ¦½νΈμμ λ§€μ° λ리 μ¬μ©λλ€.
Q2. touchλ‘ ctime(νμΌ λ³κ²½ μκ°)μ μμ ν μ μλμ?
μλμ.
ctimeμ Linux νμΌ μμ€ν
μμ “λ©νλ°μ΄ν° λ³κ²½ μ μλ κ°±μ λλ μκ°”μ΄λ€.
touchλ‘ λ³κ²½ κ°λ₯ν μκ°μ λ€μ λ κ°μ§λΏμ΄λ€.
- atime (μ κ·Ό μκ°)
- mtime (μμ μκ°)
ctimeμ μμ€ν λ΄λΆμ μΌλ‘ κ΄λ¦¬λκΈ° λλ¬Έμ touch λͺ λ Ήμ΄λ‘ μ§μ μμ ν μ μλ€.
Q3. touch -tμ touch -dμ μ°¨μ΄λ 무μμΈκ°μ?
λ μ΅μ λͺ¨λ “μκ°μ μ§μ μ§μ ”νλ κΈ°λ₯μ΄μ§λ§ μ λ ₯ λ°©μμ΄ λ€λ₯΄λ€.
- -t: μ«μλ§ μ λ ₯νλ κ³ μ νμ (YYYYMMDDhhmm)
- -d: λ¬Έμμ΄ κΈ°λ°μ μ μ°ν μ λ ₯ λ°©μ (“2025-11-27 09:30:00”, “yesterday”, “next monday” λ±)
μΌλ°μ μΌλ‘ νΈμμ± λλ¬Έμ -dκ° λ λ리 μ°μΈλ€.
Q4. λλ ν°λ¦¬λ₯Ό touchνλ©΄ μ΄λ»κ² λλμ?
touchλ νμΌμ λμμΌλ‘ λμνλ λͺ
λ Ήμ΄κΈ° λλ¬Έμ
λλ ν°λ¦¬λ₯Ό touchνλ©΄ μ€ν¨νλ€.
μ)
touch /etc/
→ μλ¬ λ°μ (λλ ν°λ¦¬λ νμμ€ν¬ν λμμ΄ μλ)
νμνλ€λ©΄ λλ ν°λ¦¬ μκ°μ λ³κ²½ν μ μλ utime κ΄λ ¨ μμ€ν νΈμΆ λλ find -exec touch λ°©μμ΄ νμνμ§λ§, μΌλ° μ΄μ λͺ©μ μμλ μ¬μ©νμ§ μλλ€.
Q5. touchλ‘ μμ λλ ν°λ¦¬κ° μλ νμΌμ μμ±ν μ μλμ?
λΆκ°λ₯νλ€.
μ:
touch logs/error.log
logs λλ ν°λ¦¬κ° μμΌλ©΄ λ€μ μ€λ₯κ° λ°μνλ€.
No such file or directory
ν΄κ²° λ°©λ²:
mkdir -p logs
touch logs/error.log
11. touchλ μ΄λ€ λ³νλ₯Ό λ§λ€μ΄μ£Όλκ°?
touchλ λ¨μν λͺ
λ Ήμ΄λ‘ 보μ΄μ§λ§,
Linux μμ€ν
μμλ νμμ€ν¬νκ° κ³§ μλ―Έ·μ‘°κ±΄·λμμ κΈ°μ€μ΄ λλ€.
- νμΌ μμ‘΄μ± νλ¨
- λΉλ νΈλ¦¬κ±°
- μλν μ€ν¬λ¦½νΈ
- λ°±μ μ μ±
- μν νλκ·Έ νμΌ μμ±
μ΄ λͺ¨λ κ²μ΄ “νμΌμ μκ° μ 보”μ κΈ°λ°νλ€.
“μκ°μ λ€λ£¨λ μ¬λμ μμ€ν μ λ€λ£¬λ€.”
touchλ₯Ό μ΄ν΄νλ©΄ Linux μ΄μμ μ κ΅ν¨μ΄ ν λ¨κ³ μ¬λΌκ°λ€.
μ΄μ κΈ λ³΄κΈ°
[Linux] rmdir λͺ λ Ήμ΄ κ°μ΄λ – μμ νκ³ μ¬λ°λ₯΄κ² ν΄λ μμ νλ λ°©λ² π‘λ€μκΈ λ³΄κΈ°
[Linux] catμΌλ‘ νμΌ λ€λ£¨κΈ° – μ΄λ³΄λΆν° μ λ¬Έκ°κΉμ§ μ΄ν΄νλ μ€μ κ°μ΄λ π