파일 관련 게시글 - JooTC https://jootc.com/p/tag/파일 Windows, macOS, Linux, IT, 프로그래밍 등 여러가지 테크 분야에 대한 정보와 습득 지식을 포스팅하는 블로그입니다. Fri, 05 Apr 2024 08:06:03 +0000 ko-KR hourly 1 https://cdn.jootc.com/cdn-cgi/imagedelivery/oqyERuCgVQd6S5Vv8tpSLQ/3ada79ef-6b1a-40f3-df58-d35a70101100/w=32,h=32,fit=crop 파일 관련 게시글 - JooTC https://jootc.com/p/tag/파일 32 32 167838187 우분투 파일 관리자(nautilus)가 열리지 않을 때 https://jootc.com/p/202009143633 https://jootc.com/p/202009143633#comments Mon, 14 Sep 2020 08:20:39 +0000 https://jootc.com/?p=3633 우분투의 파일 관리자인 노틸러스(nautilus)가 간혹 열리지 않을 때가 있습니다. 앱 리스트에서 Files 아이콘을 클릭해도 반응이 없거나, 에러가 발생하는 경우 이를 해결하는 방법을 알려드리고자 합니다. 우분투 파일 관리자 안열림 해결 방법 문제의 원인은 운영체제 환경에 따라 달라질 수 있지만, 대부분 노틸러스 실행 시 필요한 파일이 깨져있거나 열려있는 노틸러스 프로세스의 충돌 문제로 인해 발생합니다. 이 문제를 해결하는 […]

The post 우분투 파일 관리자(nautilus)가 열리지 않을 때 appeared first on JooTC.

]]>
우분투의 파일 관리자인 노틸러스(nautilus)가 간혹 열리지 않을 때가 있습니다. 앱 리스트에서 Files 아이콘을 클릭해도 반응이 없거나, 에러가 발생하는 경우 이를 해결하는 방법을 알려드리고자 합니다.

우분투 파일 관리자 안열림 해결 방법

문제의 원인은 운영체제 환경에 따라 달라질 수 있지만, 대부분 노틸러스 실행 시 필요한 파일이 깨져있거나 열려있는 노틸러스 프로세스의 충돌 문제로 인해 발생합니다. 이 문제를 해결하는 다양한 방법이 있습니다. 아래 해결 방법은 Ubuntu 18.04 LTS 이후에서 확인되었습니다.

가장 빠른 해결 방법은 노틸러스 프로세스를 강제 종료한 후 재실행하는 것입니다. 먼저 터미널 앱을 연 뒤에 다음 명령어를 sudo 권한 또는 root 계정으로 실행해보세요.

$ ps awx | grep nautilus
$ sudo kill -TERM <위 명령어에서 나타난 nautilus의 PID를 여기에 입력합니다.>

또는 아래와 같이 하나의 명령어로 프로세스를 강제 종료할 수 있습니다.

$ sudo killall nautilus

이후 다시 다음 명령어를 실행하여 파일 관리자를 다시 실행시켜줍니다. 이번에는 root 권한 없는 사용자 계정으로 진행합니다.

$ nautilus

이제 노틸러스가 열릴 것입니다! (명령어가 아닌 앱 아이콘 클릭으로 열려고 시도하면 간혹 열리지 않는 경우가 있을 수 있습니다.)

만약 위 방법으로 문제가 해결되지 않는다면 nautilus 관련 패키지를 다시 설치하는 방법이 있습니다.

터미널 앱에서 다음 명령어를 실행하여 nautilus에 종속되는 패키지설치하거나 재설치해야 합니다. (sudo 권한 또는 root 계정으로 진행되어야 합니다.)

$ sudo apt install --reinstall nautilus-data

설치가 완료되었다면 노틸러스를 다시 실행하여 문제가 해결 되었는지 확인해보세요.

The post 우분투 파일 관리자(nautilus)가 열리지 않을 때 appeared first on JooTC.

]]>
https://jootc.com/p/202009143633/feed 1 3633
리눅스 rm 명령어 – 파일 및 디렉토리 삭제 https://jootc.com/p/202001273281 https://jootc.com/p/202001273281#respond Mon, 27 Jan 2020 07:01:39 +0000 https://jootc.com/?p=3281 리눅스 명령어 – rm 리눅스 rm 명령어는 remove(제거)의 약자로서 파일이나 디렉토리를 삭제하는 역할을 하는 명령어입니다. 타이핑으로 파일을 지우는 탓에 어떻게보면 윈도우 탐색기에서 파일을 지우는 것 보다도 위험하고 무서운 존재이기도 합니다. 윈도우 운영체제는 파일을 지우게 되면 ‘휴지통’으로 파일이 일단 이동되지만 리눅스는 데스크톱 매니저를 쓰지 않거나, rm 명령어를 사용할 때는 즉시 파일이나 디렉토리가 삭제됩니다. (즉, 복구가 거의 […]

The post 리눅스 rm 명령어 – 파일 및 디렉토리 삭제 appeared first on JooTC.

]]>
리눅스 명령어 – rm

리눅스 rm 명령어는 remove(제거)의 약자로서 파일이나 디렉토리를 삭제하는 역할을 하는 명령어입니다. 타이핑으로 파일을 지우는 탓에 어떻게보면 윈도우 탐색기에서 파일을 지우는 것 보다도 위험하고 무서운 존재이기도 합니다.

윈도우 운영체제는 파일을 지우게 되면 ‘휴지통’으로 파일이 일단 이동되지만 리눅스는 데스크톱 매니저를 쓰지 않거나, rm 명령어를 사용할 때는 즉시 파일이나 디렉토리가 삭제됩니다. (즉, 복구가 거의 불가능합니다.)

또한 rm 명령어를 잘못 사용했다가는 실수로 중요한 파일들이 지워지는 사태가 발생하여 서버 등에 치명적인 문제를 일으키기도 합니다. 실제로 강제 제거 명령인 rm -rf 명령어를 잘못 사용하여 픽사의 토이스토리 2 작업 내용 대부분이 날아간 적도 있었고 GitLab의 서비스가 한동안 마비된 적도 있었습니다.

이 때문에 길게 설명해드릴만큼 rm 명령어는 신중하게 사용해야만 합니다. 아래에 설명드리겠지만 강제 삭제 옵션인 -f는 더더욱 주의해서 사용해야합니다.

사용 방법

일반적인 파일을 삭제할 때는 단순히 rm 명령 뒤에 파일 이름만 붙여주면 됩니다. 아래 예시는 myfile 파일을 지우는 예시입니다.

rm myfile

하지만 디렉토리를 삭제하고자 하는 경우 다음과 같이 문제가 발생합니다.

rm mydir
rm: cannot remove 'mydir': Is a directory

디렉토리의 경우 -r (recursive)옵션을 함께 붙여주어야만 지워집니다. 디렉토리를 지우면 디렉토리 내부의 파일까지 모두 지워지기 때문인데, 일종의 안전장치라고 보시면 될 것 같습니다.

rm -r mydir

만약 여러 파일이나 디렉토리를 한 번에 지우고 싶다면 공백을 주어 뒤쪽에 파일명을 계속 입력하면 됩니다.

rm myfile1 myfile2 myfile3 myfile4 myfile5

만약 현재 디렉토리 내의 모든 파일을 지우고 싶은 경우 와일드카드 문자인 *를 사용하여 한 번에 지울 수 있습니다. 현재 디렉토리 내에 숨겨진 파일(파일명 앞에 . 이 붙은 파일들)만 제외하고 모두 지워집니다. 와일드 카드는 아주 위험하므로 검증되지 않았다면 주의해서 사용해야 합니다.

rm *

다음과 같이 파일명 앞부분의 일부만 작성하고 와일드카드를 붙이면 해당 규칙에 맞는 파일만을 삭제합니다.

rm myfi*

일반적으로 파일을 지우면 다음과 같이 확인 문구가 나타나기도 합니다.

rm: remove regular empty file `myfile`?

이 때 y를 입력하고 엔터를 눌러야 파일이 삭제되며, n을 입력하면 취소됩니다. 이 또한 안전장치라고 볼 수 있지만, 가끔 좀 성가실 때가 있습니다.

이럴 때 사용하는 옵션이 -f (force)입니다. 중요하지 않은 다수의 파일을 지워야 하는 경우 유용하게 사용될 수 있습니다. 만약 삭제 대상이 디렉토리라면 -r 옵션을 함께 붙여주어서 -rf 로 사용합니다. 앞서 말했 듯이 주의해서 사용하는 것이 좋습니다.

The post 리눅스 rm 명령어 – 파일 및 디렉토리 삭제 appeared first on JooTC.

]]>
https://jootc.com/p/202001273281/feed 0 3281
[PHP] unlink 함수 사용 시 Permission denied 해결 방법 https://jootc.com/p/201910033166 https://jootc.com/p/201910033166#respond Thu, 03 Oct 2019 09:44:22 +0000 https://jootc.com/?p=3166 PHP unlink Permission denied 문제 PHP에서 파일을 삭제하기 위한 함수인 unlink()를 사용하여 파일 쓰기 작업을 하려는데 다음과 같이 에러 메시지가 나타나며 파일이 삭제되지 않는 경우가 생깁니다. Warning: unlink(../uploads/test-file.txt): Permission denied in /home/www/html/index.php on line 58 unlink가 수행되지 않는 문제는 크게 2가지가 있습니다. 파일의 경로가 올바르게 지정되어 있는가 / 해당 파일이 존재하는가 파일 또는 디렉토리의 권한이 […]

The post [PHP] unlink 함수 사용 시 Permission denied 해결 방법 appeared first on JooTC.

]]>
PHP unlink Permission denied 문제

PHP에서 파일을 삭제하기 위한 함수인 unlink()를 사용하여 파일 쓰기 작업을 하려는데 다음과 같이 에러 메시지가 나타나며 파일이 삭제되지 않는 경우가 생깁니다.

Warning:  unlink(../uploads/test-file.txt): Permission denied in /home/www/html/index.php on line 58

unlink가 수행되지 않는 문제는 크게 2가지가 있습니다.

  • 파일의 경로가 올바르게 지정되어 있는가 / 해당 파일이 존재하는가
  • 파일 또는 디렉토리의 권한이 올바른가

일반적으로 unlink를 하기 위해서 파일에 읽기/쓰기 권한을 주어야 하는데, unlink를 실행하기 전에 chmod() 함수를 실행하여 권한을 부여하면 해결되는 경우가 있습니다.

chmod("/path/to/file", 0777);

그러나 위 함수를 사용해도 아래와 같이 유사한 같은 에러가 나타나는 경우가 있습니다.

Warning: chown(): Permission denied in /home/www/html/index.php on line 56

파일의 경로에도, 권한에도 문제가 없는데 정상적으로 삭제되지 않는 이유는 무엇일까요?

문제를 확인해보니 SELinux 정책으로 인해 삭제되지 않는 것이었습니다. SELinux는 리눅스의 향상된 보안을 위해 고안된 보안 모듈이며 까다로운 권한 정책을 설정하여 서버측에서는 높은 안전을 얻을 수 있으며, 개발자에게는 더 많은 스트레스를 줍니다.

원인을 도통 알 수 없는 권한 문제는 대부분 SELinux 때문이라고 여길 정도이니, 이러한 유형의 문제가 나타난다면 아래 포스트를 참고하여 일시적으로 SELinux를 끄고 테스트해보면 됩니다.

Linux SELinux 끄기 및 임시 비활성화 방법

다시 본론으로 들어와서, SELinux를 켠 상태에서 unlink를 수행하고 싶은 경우 해당 디렉토리의 콘텍스트를 chcon 명령어(디렉토리 또는 파일의 콘텍스트를 강제로 변경하는 명령어)를 사용하여 변경해주어야 합니다. 이 명령어는 웹 서비스가 구동되는 서버의 콘솔상에서 root 권한을 가진 계정으로 입력해야 합니다. (이 내용을 잘 모르신다면 서버 관리자에게 문의해보시는게 좋을 듯 합니다.)

[root@localhost]# chcon -t httpd_sys_rw_content_t [path_to_directory_or_file]

[path_to_directory_or_file] 부분에 절대 또는 상대 경로를 포함한 파일/디렉토리 이름이 들어가면 됩니다. 예를 들어 삭제할 파일이 /home/www/html/del 안에 들어있는 경우 chcon -t httpd_sys_rw_content_t /home/www/html/del 과 같이 입력해주시면 됩니다.

이제 다시 unlink를 시도해보시면 별다른 문제 없이 파일이 삭제될 것입니다.

The post [PHP] unlink 함수 사용 시 Permission denied 해결 방법 appeared first on JooTC.

]]>
https://jootc.com/p/201910033166/feed 0 3166
윈도우 3.0 파일 관리자, Microsoft Store에 등장하다 https://jootc.com/p/201902032649 https://jootc.com/p/201902032649#respond Sun, 03 Feb 2019 08:40:31 +0000 https://blog.inidog.com/?p=2649 Windows 3.0 (1999)과 3.1, Windows ME 등에 탑재되었던 파일 관리자(File Manager)가 마이크로소프트 스토어 앱으로 등장했습니다.   Microsoft Store에 등장한 구세대 파일 관리자 파일 매니저는 아주 오래 전의 윈도우 버전에 기본 탑재된 퍼스트 파티 응용 프로그램이지만, 지금은 파일 탐색기에 의해 더 이상 탑재되지 않는 프로그램입니다. 이런 점에서 윈도우 10의 스토어에 등장했다는 것은 조금 뜬금없긴 합니다. 그것도 […]

The post 윈도우 3.0 파일 관리자, Microsoft Store에 등장하다 appeared first on JooTC.

]]>
microsoft-store-file-manager-app
Microsoft Store에 등장한 파일 관리자 앱

Windows 3.0 (1999)과 3.1, Windows ME 등에 탑재되었던 파일 관리자(File Manager)마이크로소프트 스토어 앱으로 등장했습니다.

 

Microsoft Store에 등장한 구세대 파일 관리자


파일 매니저는 아주 오래 전의 윈도우 버전에 기본 탑재된 퍼스트 파티 응용 프로그램이지만, 지금은 파일 탐색기에 의해 더 이상 탑재되지 않는 프로그램입니다. 이런 점에서 윈도우 10의 스토어에 등장했다는 것은 조금 뜬금없긴 합니다. 그것도 게시자가 Microsoft Corporation, 즉 공식적으로 릴리스되었다는 것입니다.

 

windows-3.1_file-manager-new-screenshot
윈도우 10에서 구동되고 있는 파일 관리자의 모습

사실 스토어에 출시되기 이전에도 2018년 4월 6일 GitHub에서 공개되었으며, 몇가지 자잘한 개선은 물론 최신 윈도우에서 말끔하게 구동될 수 있도록 64비트 빌드까지 진행되었다고 합니다.

 

windows-3.1_file-manager-screenshot
윈도우 3.1에서의 파일 관리자 모습

파일 관리자는 현재의 파일 탐색기와 비슷한 구조로 되어있지만, 한 창에 여러 탭을 동시에 보이게 하는 것 처럼 몇가지 소소한 장점들이 있었습니다.

 

사실 옛 감성이 아니고서야 지금에 와서 굳이 사용해볼 일은 없을 것입니다. 이전의 윈도우의 모습을 조금이나마 체험해보고 싶다면 재미삼아 설치해보는 것도 나쁘지 않을 것 같습니다.

The post 윈도우 3.0 파일 관리자, Microsoft Store에 등장하다 appeared first on JooTC.

]]>
https://jootc.com/p/201902032649/feed 0 2649
리눅스 mkdir 명령어 – 손쉬운 디렉토리 생성 방법 https://jootc.com/p/201901302637 https://jootc.com/p/201901302637#respond Wed, 30 Jan 2019 10:35:57 +0000 https://blog.inidog.com/?p=2637 리눅스 명령어 – mkdir mkdir은 가장 자주 쓰이는 명령어이자 반드시 알아야하는 명령어 중의 하나입니다. mkdir은 make directory의 약자이며 원하는 이름으로 디렉토리를 생성하게 해주는 명령어입니다. 주로 유닉스/리눅스 셸 명령어로 사용되지만 윈도우 명령 프롬프트에서도 해당 명령어로 폴더를 만들 수 있습니다. (물론 윈도우에서는 옵션 등의 사용법이 다릅니다.)     사용 방법 사용법은 아주 간단합니다. mkdir 뒤에 디렉토리 이름을 […]

The post 리눅스 mkdir 명령어 – 손쉬운 디렉토리 생성 방법 appeared first on JooTC.

]]>
리눅스 명령어 – mkdir

mkdir은 가장 자주 쓰이는 명령어이자 반드시 알아야하는 명령어 중의 하나입니다.

mkdirmake directory의 약자이며 원하는 이름으로 디렉토리를 생성하게 해주는 명령어입니다. 주로 유닉스/리눅스 셸 명령어로 사용되지만 윈도우 명령 프롬프트에서도 해당 명령어로 폴더를 만들 수 있습니다. (물론 윈도우에서는 옵션 등의 사용법이 다릅니다.)

 

 

사용 방법


사용법은 아주 간단합니다. mkdir 뒤에 디렉토리 이름을 인자값으로 붙이면 현재 디렉토리 위치에 새로운 디렉토리를 생성합니다.

$ mkdir newFolder

디렉토리가 생성되었는지 확인하기위해 ls -al (현재 위치의 전체 파일을 자세히 출력)명령어를 사용해보겠습니다.

$ ls -al
total 4
drwxrwxr-x.  3 user user   23 Jan 30 18:25 .
drwx--x--x. 25 user user 4096 Jan 30 18:25 ..
drwxrwxr-x.  2 user user    6 Jan 30 18:25 newFolder

newFolder가 생성된 것을 확인할 수 있습니다. 여기서 첫번째 열은 파일 형식 및 권한 정보를 보여주는 것인데, 여기서 d 로 표시되는 것들은 모두 디렉토리임을 뜻합니다. (처음의 현재 경로인 ‘.‘ 과 상위 경로인 ‘..‘ 역시 d 로 나타납니다.) 아래 표를 참고해보세요.

문자파일 타입설명
-일반 파일일반적인 파일을 나타내는 문자
d디렉토리디렉토리를 나타내는 문자
l심볼릭 링크심볼릭 링크 (Soft Link) 파일
c문자 장치 드라이버문자 장치 드라이버 (Character Device Driver). 물리적 장치를 위한 실행 파일
b블록 장치 드라이버블록 장치 드라이버 (Block Device Driver). 물리적 장치를 위한 실행 파일
s로컬 소켓프로세스 통신을 위해 사용되는 파일.
p네임드 파이프 (Named Pipe)프로세스 통신을 위해 사용되는 파일. 선입선출 (FIFO) 파일이라고도 함

 

참고로 rm 명령어로 파일을 삭제할 때 디렉토리의 경우에는 경고를 표시합니다. 이 때 다음 예시처럼 rm-r 옵션을 붙여야합니다.

$ mkdir newFolder
$ rm newFolder/
rm: cannot remove ‘newFolder/’: Is a directory
$ rm -r newFolder/
$ ls -al
total 4
drwxrwxr-x.  2 user user    6 Jan 30 19:13 .
drwx--x--x. 25 user user 4096 Jan 30 19:07 ..

 

다음으로 여러 디렉토리를 한 번에 생성해보겠습니다. 역시나 간단합니다. 여러 디렉토리 이름을 공백으로 구분하여 인자값으로 지정하면 한 번에 지정한 디렉토리를 모두 생성할 것입니다.

$ mkdir red green blue black white
$ ls -al
total 4
drwxrwxr-x.  7 user user   68 Jan 30 19:16 .
drwx--x--x. 25 user user 4096 Jan 30 19:07 ..
drwxrwxr-x.  2 user user    6 Jan 30 19:16 black
drwxrwxr-x.  2 user user    6 Jan 30 19:16 blue
drwxrwxr-x.  2 user user    6 Jan 30 19:16 green
drwxrwxr-x.  2 user user    6 Jan 30 19:16 red
drwxrwxr-x.  2 user user    6 Jan 30 19:16 white

 

만약 모든 디렉토리 생성 과정을 메세지로 출력받고 싶다면 아래와 같이 -v (verbose)옵션을 붙이면 됩니다.

$ mkdir -v AA BB CC
mkdir: created directory ‘AA’
mkdir: created directory ‘BB’
mkdir: created directory ‘CC’

 

이번에는 여러 단계의 디렉토리를 한 번에 생성하고 싶은 경우가 있습니다.

예를 들어 /home/myuser 경로 안에 하위 디렉토리인 A, A 디렉토리 내에 B, B 디렉토리 내에 C와 같이 구성(/home/myuser/A/B/C)하려 할 때, A 디렉토리를 만들고 cd 명령어로 A 디렉토리에 이동해서 B 디렉토리를 만드는 등의 과정을 굳이 하지 않아도 됩니다. A/B/C 폴더를 한 번에 생성하려고 할 때에는 mkdir-p (parents) 옵션을 붙여 사용하면 됩니다.

$ mkdir -p /home/user/A/B/C

이 때 /home/user 디렉토리는 이미 존재하므로 이를 무시한 채 존재하지 않는 A, B, C 폴더만 각각 생성할 것입니다.

 

마지막으로 디렉토리를 생성할 때 미리 권한을 부여하고 싶은 경우 -m (mode) 옵션을 붙여 umask를 지정하면 됩니다. 여기서 rwx 와 같은 형식을 사용해서는 안되고 755, 600과 같은 8진법 숫자를 사용해야 합니다.

다음은 Scripts 디렉토리를 소유자에게만 모든 권한(rwx)을 주도록 하는 예시입니다.

$ mkdir -m 700 Scripts/
$ ls -al
total 4
drwxrwxr-x.  3 user user   27 Jan 30 19:30 .
drwx--x--x. 26 user user 4096 Jan 30 19:22 ..
drwx------.  2 user user    6 Jan 30 19:30 Scripts

The post 리눅스 mkdir 명령어 – 손쉬운 디렉토리 생성 방법 appeared first on JooTC.

]]>
https://jootc.com/p/201901302637/feed 0 2637
리눅스 stat 명령어 – 특정 파일 및 디렉토리 정보 확인 https://jootc.com/p/201901272606 https://jootc.com/p/201901272606#respond Sun, 27 Jan 2019 11:02:43 +0000 https://blog.inidog.com/?p=2606 리눅스 명령어 – stat stat 명령어를 사용하면 리눅스 시스템 내 디렉토리나 파일의 다양한 정보를 확인할 수 있습니다. 일반적으로 우리가 자주 사용하는 ls 명령어와는 다르게 요약되지 않은 정보를 출력함으로서, 파일의 권한이나 수정 시각을 자세히 알고 싶다면 stat을 사용하는 것이 좋습니다.   stat 명령어로 알 수 있는 대략적인 정보는 다음과 같습니다. Inode : inode(아이노드) 번호 Uid, Gid […]

The post 리눅스 stat 명령어 – 특정 파일 및 디렉토리 정보 확인 appeared first on JooTC.

]]>
리눅스 명령어 – stat

stat 명령어를 사용하면 리눅스 시스템 내 디렉토리나 파일의 다양한 정보를 확인할 수 있습니다.

일반적으로 우리가 자주 사용하는 ls 명령어와는 다르게 요약되지 않은 정보를 출력함으로서, 파일의 권한이나 수정 시각을 자세히 알고 싶다면 stat을 사용하는 것이 좋습니다.

 

linux-stat-command

stat 명령어로 알 수 있는 대략적인 정보는 다음과 같습니다.

  • Inode : inode(아이노드) 번호
  • Uid, Gid : 소유자 및 그룹의 이름과 UID 및 GID
  • Links : 링크된 파일의 수
  • Context : 보안 정책(SELinux Policy) 정보
  • Access(상단) : 권한 정보
  • Access(하단) : 접근 시각(atime) 정보
  • Modify : 수정 시각(mtime) 정보
  • Change : 변경 시각(ctime) 정보

 

 

사용 방법


stat을 사용할 때 파일이나 디렉토리를 인자값으로 지정하면 해당 파일의 상세 정보를 출력할 수 있습니다.

$ stat testfile 
  File: ‘testfile’
  Size: 5         	Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 101254431   Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/    user)   Gid: ( 1000/    user)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2019-01-13 20:22:51.408946787 +0900
Modify: 2019-01-13 20:22:53.234352063 +0900
Change: 2019-01-13 20:22:53.237602043 +0900
 Birth: -

 

여러 파일이나 디렉토리를 인자값으로 지정하여 한 번에 파일 정보를 확인할 수 있습니다. 여기에는 와일드카드 규칙(예 : stat testfile*)도 사용할 수 있습니다.

$ stat testfile1 testfile2
  File: ‘testfile1’
  Size: 90        	Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 101546507   Links: 1
Access: (0775/-rwxrwxr-x)  Uid: ( 1000/    user)   Gid: ( 1000/    user)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2019-01-13 20:38:00.132684633 +0900
Modify: 2019-01-13 20:38:00.132684633 +0900
Change: 2019-01-13 20:38:00.133767959 +0900
 Birth: -
  File: ‘testfile2’
  Size: 5         	Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 101546506   Links: 1
Access: (0775/-rwxrwxr-x)  Uid: ( 1000/    user)   Gid: ( 1000/    user)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2019-01-13 20:37:49.077334881 +0900
Modify: 2019-01-13 20:37:49.077334881 +0900
Change: 2019-01-13 20:37:49.077334881 +0900
 Birth: -

 

응용하자면 --printf 옵션을 사용하여 원하는 값만 출력할 수 있습니다. 자세한 포맷은 man stat을 입력하여 확인할 수 있습니다. 아래는 inode 번호만 출력하는 예시입니다.

$ stat --printf="Inode : %i \n" testfile1
Inode : 101546507

 

The post 리눅스 stat 명령어 – 특정 파일 및 디렉토리 정보 확인 appeared first on JooTC.

]]>
https://jootc.com/p/201901272606/feed 0 2606
[VBScript] 파일 또는 폴더를 삭제하는 스크립트 https://jootc.com/p/201810031949 https://jootc.com/p/201810031949#respond Wed, 03 Oct 2018 06:04:16 +0000 https://blog.inidog.com/?p=1949 VBscript 파일 또는 폴더 삭제 VBScript에서 파일이나 폴더를 삭제하는 방법   스크립트 예시 strFolder = "[Folder Path]" SET objFSO = CreateObject("Scripting.FileSystemObject") If objFSO.FolderExists(strFolder) Then objFSO.DeleteFolder(strFolder) End If strFolder 경로가 존재할 경우에 해당 폴더를 삭제하는 스크립트입니다.   폴더 삭제 SET objFSO = CreateObject("Scripting.FileSystemObject") objFSO.DeleteFolder("C:\Users\mypc\Desktop\directory") 선언된 오브젝트에서 DeleteFolder() 을 호출합니다. 이 때 DeleteFolder 인자 값에는 폴더의 경로가 […]

The post [VBScript] 파일 또는 폴더를 삭제하는 스크립트 appeared first on JooTC.

]]>
VBscript 파일 또는 폴더 삭제

VBScript에서 파일이나 폴더를 삭제하는 방법

 

스크립트 예시

strFolder = "[Folder Path]"

SET objFSO = CreateObject("Scripting.FileSystemObject")

If objFSO.FolderExists(strFolder) Then
    objFSO.DeleteFolder(strFolder)
End If

strFolder 경로가 존재할 경우에 해당 폴더를 삭제하는 스크립트입니다.

 

폴더 삭제

SET objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFolder("C:\Users\mypc\Desktop\directory")

선언된 오브젝트에서 DeleteFolder() 을 호출합니다. 이 때 DeleteFolder 인자 값에는 폴더의 경로가 들어가야 합니다.

만약 해당 경로의 폴더가 존재하지 않는다면 스크립트 에러가 발생하게 됩니다.

 

파일 삭제

SET objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFile("C:\Users\mypc\Desktop\directory\myfile.txt")

선언된 오브젝트에서 DeleteFile() 을 호출합니다. 이 때 DeleteFile 인자 값에는 파일의 경로가 들어가야 합니다.

만약 해당 경로의 파일이 존재하지 않는다면 스크립트 에러가 발생하게 됩니다.

The post [VBScript] 파일 또는 폴더를 삭제하는 스크립트 appeared first on JooTC.

]]>
https://jootc.com/p/201810031949/feed 0 1949
리눅스 여러 파일 문자열 동시에 바꾸기 (한 줄의 명령어로 처리) https://jootc.com/p/201809291740 https://jootc.com/p/201809291740#respond Sat, 29 Sep 2018 06:36:26 +0000 https://blog.inidog.com/?p=1740 여러 파일의 문자열을 동시에 바꾸기 리눅스 터미널에서 여러 파일에 있는 텍스트 내용을 동시에 바꾸고 싶은 경우가 있습니다. 한 파일을 열어가면서 일일히 바꾸기 명령을 사용할 수도 있겠지만, 파일이 많고 여러 군데 흩어져 있을 경우 작업 시간이 매우 길어지기 때문에 권장되지 않을 수 있습니다.   아래 명령어를 사용하면 여러 텍스트를 한 번에 변경할 수 있습니다.   방법 […]

The post 리눅스 여러 파일 문자열 동시에 바꾸기 (한 줄의 명령어로 처리) appeared first on JooTC.

]]>
여러 파일의 문자열을 동시에 바꾸기

리눅스 터미널에서 여러 파일에 있는 텍스트 내용을 동시에 바꾸고 싶은 경우가 있습니다. 한 파일을 열어가면서 일일히 바꾸기 명령을 사용할 수도 있겠지만, 파일이 많고 여러 군데 흩어져 있을 경우 작업 시간이 매우 길어지기 때문에 권장되지 않을 수 있습니다.

 

아래 명령어를 사용하면 여러 텍스트를 한 번에 변경할 수 있습니다.

 

방법 1 : perl 사용

find . [변경할 파일들이 있는 디렉토리 경로] -exec perl -pi -e 's/[찾을 텍스트]/[바꿀 텍스트]/g' {} \;
  • 사용법 : findperl 명령어로 정규식에 의해 텍스트를 변경

먼저 /Path/에는 변경할 파일들이 존재하는 디렉토리의 위치입니다. 해당 위치에 존재하는 모든 파일을 검색하게 됩니다.

이후 perl 스크립트를 사용하여 정규식에 의해 텍스트 변환을 진행합니다.

여기서 s/Find/Replace/g는 터미널 텍스트 에디터 vi 또는 vim에서 사용되는 문자열 바꾸기 명령어와도 같습니다.

 

방법 2 : sed -i 사용

cd [변경할 파일들이 있는 디렉토리 경로]
sed -i 's/[찾을 텍스트]/[변경할 텍스트]/g' *
  • 사용법 : 변경할 파일이 존재하는 경로에서 sed -i 사용

-i 옵션을 붙이면 반영할 내용이 파일에 즉시 덮어씌워지게 됩니다. 마찬가지로 s/aaa/bbb/g는 텍스트 에디터에서 사용되는 바꾸기 명령어입니다.

 

 

참고자료


The post 리눅스 여러 파일 문자열 동시에 바꾸기 (한 줄의 명령어로 처리) appeared first on JooTC.

]]>
https://jootc.com/p/201809291740/feed 0 1740
윈도우 파일명 일괄 변경 처리로 한꺼번에 이름 바꾸기 https://jootc.com/p/201806031201 https://jootc.com/p/201806031201#respond Sun, 03 Jun 2018 07:37:32 +0000 https://blog.inidog.com/?p=1201 윈도우에서 파일명을 동시에 바꾸고 싶을 때가 있습니다. 가령 아래와 같이 파일들이 있다고 가정해봅시다. 이를 같은 이름으로 일괄 변경하고 싶을 때가 있습니다. 파일 개수가 적다면 수작업으로 파일명을 변경하면 되지만 파일이 아주 많아질 때는 시간이 꽤 오래 걸릴 수 있는 작업이기 때문에 동시에 변경할 수 있는 방법이 있으면 한 번에 바꿀 수 있을 것입니다.   윈도우 파일명 […]

The post 윈도우 파일명 일괄 변경 처리로 한꺼번에 이름 바꾸기 appeared first on JooTC.

]]>
윈도우에서 파일명을 동시에 바꾸고 싶을 때가 있습니다. 가령 아래와 같이 파일들이 있다고 가정해봅시다.

window rename file

이를 같은 이름으로 일괄 변경하고 싶을 때가 있습니다. 파일 개수가 적다면 수작업으로 파일명을 변경하면 되지만 파일이 아주 많아질 때는 시간이 꽤 오래 걸릴 수 있는 작업이기 때문에 동시에 변경할 수 있는 방법이 있으면 한 번에 바꿀 수 있을 것입니다.

 

윈도우 파일명 일괄 변경 방법


다행히도 Windows에서 특별한 프로그램이나 편법을 사용하지 않고 파일명을 한꺼번에 바꿀 수 있습니다. 방법은 아주 간단한데요.

먼저 아래와 같이 숫자로만 되어있는 파일이 있는 경우, 이름을 바꿀 파일들을 모두 선택합니다.

file detail view and select file

 

다음으로 현재 선택된 부분에 마우스 우측 버튼을 클릭하여 ‘이름 바꾸기’ 를 클릭합니다. 또는 선택 상태에서 F2(이름 바꾸기 키)를 입력하여 아래와 같이 이름 바꾸기 상태로 만듭니다.

원하는 이름으로 설정한 후 엔터를 입력해주세요.

window rename file 2

 

그러면 아래와 같이 파일 이름이 모두 바뀌어 있을 것입니다. 모든 파일 이름이 같아질 수 없기 때문에 설정한 이름 뒤에 괄호번호가 들어가 있는 것을 확인하실 수 있습니다.

window rename file 3

The post 윈도우 파일명 일괄 변경 처리로 한꺼번에 이름 바꾸기 appeared first on JooTC.

]]>
https://jootc.com/p/201806031201/feed 0 1201
윈도우 10 파일 용량 강제로 늘리기 https://jootc.com/p/20180409789 https://jootc.com/p/20180409789#comments Mon, 09 Apr 2018 10:49:02 +0000 https://joojy.net/?p=789 윈도우 10 파일 용량 강제로 늘리기 윈도우 10 (또는 다른 버전)에서 용량이 큰 파일을 강제로 생성하여 디스크 공간을 채울 수 있는 방법입니다. 사실 별 대단한 방법도 아니며 윈도우 프로그램 테스트용이 아니라면 굳이 이렇게 할 일이 없기 때문에 특별한 상황이 아니라면 시도하지 마시기 바랍니다. fsutil file createnew [file path][file name] [byte] fsutil 명령을 사용하여 윈도우 파일을 […]

The post 윈도우 10 파일 용량 강제로 늘리기 appeared first on JooTC.

]]>
floppy disk file system

윈도우 10 파일 용량 강제로 늘리기


윈도우 10 (또는 다른 버전)에서 용량이 큰 파일을 강제로 생성하여 디스크 공간을 채울 수 있는 방법입니다.

사실 별 대단한 방법도 아니며 윈도우 프로그램 테스트용이 아니라면 굳이 이렇게 할 일이 없기 때문에 특별한 상황이 아니라면 시도하지 마시기 바랍니다.

fsutil file createnew [file path][file name] [byte]

fsutil 명령을 사용하여 윈도우 파일을 생성할 수 있습니다. 아래에 자세한 설명이 있습니다.

---- 지원되는 명령 ----
8dot3name       8dot3name 관리
behavior        파일 시스템 동작 제어
dirty           볼륨 더티 비트 관리
file            파일 관련 명령
fsinfo          파일 시스템 정보
hardlink        하드 링크 관리
objectid        개체 ID 관리
quota           할당량 관리
repair          자동 복구 관리
reparsepoint    재분석 지점 관리
resource        트랜잭션 리소스 관리자 관리
sparse          스파스 파일 제어
tiering         저장소 계층화 속성 관리
transaction     트랜잭션 관리
usn             USN 관리
volume          볼륨 관리
wim             투명한 wim 호스팅 관리
---- 지원되는 FILE 명령 ----
createnew                지정한 크기의 새 파일 만들기
findbysid                보안 식별자로 파일 찾기
optimizemetadata         파일의 메타데이터 최적화
queryallocranges         파일의 할당된 범위 쿼리
queryextents             파일의 범위 쿼리
queryextentsandrefcounts 파일의 범위 및 해당 refcount 쿼리
queryfileid              지정한 파일의 파일 ID 쿼리
queryfilenamebyid        파일 ID에 대해 임의 링크 이름 표시
queryoptimizemetadata    파일의 메타데이터 최적화 상태 쿼리
queryvaliddata           파일의 유효한 데이터 길이 쿼리
setshortname             파일의 짧은 이름 설정
setvaliddata             파일의 유효한 데이터 길이 설정
setzerodata              파일의 제로 값 설정
seteof                   기존 파일의 파일 끝 설정
setstrictlysequential    순차적으로 ReFS SMR 파일 설정

사용법: fsutil file createnew <파일 이름> <길이>
예: fsutil file createnew C:\testfile.txt 1000

fsutil에서는 다양한 고급 명령이 가능합니다. 그 중 createnew 는 단순히 파일을 생성해주는 역할을 합니다.

물론 사전 크기 할당이 가능한 파일도 생성할 수 있습니다. 이를 실행하기 위해 cmd(명령 프롬프트)를 관리자 권한으로 실행합니다.

run windows command prompt as administrator

다음으로 아래 명령어 예시처럼 입력해주시면 됩니다.

cd "C:\Users\myuser\Desktop"
fsutil file createnew bigsizefile.txt 1000000000
big file size

이렇게하면 임의로 파일 크기를 강제 조정할 수 있습니다. 물론 실제 크기를 차지하기 때문에 하드디스크 용량도 줄어드는 것을 확인할 수 있을 것입니다.

The post 윈도우 10 파일 용량 강제로 늘리기 appeared first on JooTC.

]]>
https://jootc.com/p/20180409789/feed 1 789