내 파일에는 대략 다음이 포함되어 있습니다.
username:username:username:username:username
위 줄의 길이는 약 600자입니다.
이 awk
명령을 사용하여 명령줄에서 전송된 API/HTTP 요청의 매개변수로 사용합니다.
나는 내 스크립트를 사용하여 나를 "팔로우"하는 사용자 계정 목록을 얻고 약 24시간마다 내 하드 드라이브에 있는 원래 목록과 새로 출력된 사용자 이름 목록을 비교합니다.더 이상 나에게 관심을 두지 않는 에코. 내 논리를 루프로 캡슐화하려면 bash를 사용해야 합니다. 각 사용자 이름을 테스트하십시오.
내 현재 스크립트:
user=$(awk -F: '{ print $1 }' FILE) # Grab $User to use as an argument.
following=$(exec CURRENT_FOLLOWERS) # Outputs the new file
echo "X amount of users are following you on 78B066B87AF16A412556458AC85EFEF66155"
SAVE CURRENT FOLLOWERS TO NEW A FILE.
if [[ DIFFERENCE IS DETECTED ]] ; then
echo -ne "$User NO LONGER FOLLOWING YOU\r"
else echo -ne "This user is following you still.\r"
fi
내 질문은;
두 파일의 차이점을 어떻게 출력하나요?
답변1
정렬되지 않은 사용자 목록이 포함된 두 개의 파일이 제공됩니다.
In file1:
userD
user3
userA
user1
userB
그리고
In file2:
user3
userB
userX
user1
file1
그런 다음 에 있지만 에 속하지 않은 사용자의 간단한 목록을 얻으려면 file2
다음을 수행하십시오.
$ comm -23 <(sort file1) <(sort file2)
userA
userD
마찬가지로 사용자가 입력할 수는 있지만 file2
입력할 수는 없습니다.file1
$ comm -13 <(sort file1) <(sort file2)
userX
목록 파일이 이미 정렬된 경우 이를 각각 comm -23 file1 file2
및 로 단순화할 수 있습니다 comm -13 file1 file2
.
답변2
찾고 있는 유틸리티는 diff
설명서를 참조하세요.
답변3
파일 내용의 차이점을 확인하는 가장 좋은 명령은 다음과 같습니다.
vim -d file1 file2
답변4
fc
diff <file_new> <file_old>
Unix와 Linux에서 command 및 ie command와 같은 창을 사용해 볼 수 있습니다 .
그들 +++
또는 ---
변경된 이전 줄과 없음 +'s
및 -'s
변경되지 않은 줄
서명된 줄은 -
새 파일에서 제거되지만 이전 버전에는 존재합니다.
서명된 줄은 +
새 파일에서 추가되었지만 이전 버전의 파일에는 없었습니다.
리눅스 표기법
리눅스 >
는<
>
이전 파일의 줄을 나타냅니다.
<
새 파일의 이전 파일에서 변경된 줄을 나타냅니다.