1. 개요
맥을 재시작 할때마다 바탕화면에 있는 파일,폴더가 어느새 부터 깔끔하게 사라져 있다.
그렇다고 파일이 삭제된 것은 아니고, 사라지는 현상이 계속 발생했다는 말이다.
맥에서 숨겨진 파일을 확인할때 그냥 finder에 아무데나 한번 클릭하고 다음 단축키를 눌러보자.
command(⌘) + shift(⇧) + 점(.)
그런데 맥에서는 어떻게 숨겨진 파일을 다시 돌릴 수 있을까?
2. chflags [no]hidden <file>
쉘 스크립트를 사용해 보자
일단 맥에서는 GUI로 파일 숨기고, 표시하기 기능이 없는듯하다.(?)
그리고, 파일이 한개만 있는게 아니라 몇십개 있을 수 있는데. 이걸 일일히 하나하나 선택해서 보여지게 하는건 너무 비효율적이다.
따라서, 쉘 스크립트로 cli를 자동화 해보자.
로직
1. 반드시 숨겨야 하는(원래부터 숨겨진 파일) 경우는 toNoHiddenIgnores.txt 파일을 만들어서 관리하는것으로.
2. 쉘 파일 내부에 코드를 다음과 같은 줄을 추가하면 파일 내부의 값이 프린트 되는것을 파이프 해서 무시할 파일의 리스트로 가져온다
ignoreList=`cat toNoHiddenIgnores.txt`
3. ignoreList의 원소가 아니면 보여야 하는 파일이라는 의미므로 바탕화면의 모든 파일들을 순회하여 숨겨진것을 보이도록 로직을 짜야 한다.
위 프로세스를 나타내는 파일 예시, 쉘을 작성하자면~
1). toNoHiddenIgnores.txt"
$RECYCLE.BIN
desktop.ini
2). toNoHidden.sh
# toNoHiddenIgnores.txt와 연계하여 사용한다.
ignoreList=`cat "toNoHiddenIgnores.txt"`
# echo $ignoreList
# for file in $ignoreList; do
# echo $file
# done
curDir=`pwd`
cd ../
pushd ./Desktop
files=`ls`
# for file in "${files[@]}"; do
# echo "$file"\n
# done
echo "$files" | while IFS= read -r file; do
flag=1
for igs in $ignoreList; do
if [ "$igs" == "$file" ]; then
# echo "$flag $igs $file"
flag=0
break
fi
done
if [ $flag -eq 0 ]; then
continue
fi
echo "UnHide : $file"
chflags nohidden "$file"
done
killall Finder
popd
cd $curDir
3). 그리고 파일 경로는 다음과 같이 배치한다.
ShellApps
폴더는
당연히 없을것이니 ShellApps 이름으로 폴더 만들어 주고 거기에다 위 스크립트 파일을 넣어주자.
4). 터미널로 "cd ~/ShellApps" 디렉토리이동 & 쉘 실행
cd ~/ShellApps
sh toNoHidden.sh
3. 그래도 아직 해결된게 아니다 마지막으로 "파일 한개"를 지워야 한다.
그 파일이라 함은 "~/Library(라이브러리)/Preferences/com.apple.finder.plist" 이다.
이걸 지우자! 폴더째 지우진 말고 "com.apple.finder.plist" 만!
걱정할 필요 없는게 컴퓨터를 완벽히 종료하고 다시 키면 다시 파일이 살아나니 안심해라.
완벽 종료라 함은 그냥 "시스템 종료"가 아니다
"좌 상단 맥(애플 아이콘) > [본인 계정] 로그아웃 > 우 상단 시스템 종료"
'팁' 카테고리의 다른 글
여러 PPT 파일들을 PDF로 인쇄하는 자동화 코드 작성하기 (0) | 2025.02.17 |
---|---|
| 팁 | Mac 좌측에 앱이 쌓이는 현상 (0) | 2023.07.17 |
마크다운(Markdown) 에서 파일 연결하기 (마크다운에서 마크다운 파일 연결) (0) | 2022.01.10 |
잊지 않기 위해 작성하는 comp함수 (0) | 2021.08.14 |
[C++ 자료구조 <string> ]substr 사용법 메모 (0) | 2021.06.30 |