file1이라는 파일이 있다고 가정해 보겠습니다.
$ a=$(wc -c file1)
$ echo $a
233 file1
이제 어떻게 해야 해?
$ b=$(expr $a % 2)
$ echo $b
1
wc -c make의 file1이 충돌을 일으킬 것 같나요?
답변1
나는 다음과 같은 것을 사용할 것입니다 :
if [ $(( $(wc -c < your-filehere ) % 2)) -eq 1 ]
then
echo file has odd number of bytes
else
echo file has even number of bytes
fi
답변2
파일 이름을 제거하는 또 다른 방법 wc
은 를 사용하는 것입니다 wc -c <file1
. 이렇게 하면 두 번째 단계가 필요하지 않습니다 cat
.
답변3
한 가지 방법은 다음과 같습니다.
a=$(cat file1 | wc -c)
파일 이름이 출력되지 않으며 expr
작업할 수 있습니다.