유닉스에서 이 연습을 어떻게 할 수 있나요? 다음 명령을 작성하십시오. lshead.bash – 인수로 지정된 디렉토리에 있는 각 파일의 처음 몇 줄을 나열합니다. 이 명령은 또한 파일의 처음 n 또는 마지막 n 줄을 나열하는 옵션을 허용해야 합니다. 예제 명령: lshead.bash –head 10 Documents는 문서 디렉토리에 있는 각 파일의 처음 10줄을 나열합니다.
답변1
이 코드는 기본적인 아이디어를 제공합니다. 필요한 경우 일부 기능을 직접 추가할 수 있습니다.
편집하다
#!/bin/bash
cur_dir=`pwd`
function head_file()
{
ls -p $cur_dir | grep -v / | while read file;do
echo "First $1 lines of the FILE: $file"
cat $file | head -n+$1 # Displaying the First n lines
echo "*****************END OF THE FILE: $file**************"
done
}
function tail_file()
{
ls -p $cur_dir | grep -v / | while read file;do
echo "Last $1 lines of the FILE: $file"
cat $file | tail -n+$1 # Displaying the last n lines
echo "**************END OF THE FILE: $file******************"
done
}
case "$1" in
head)
head_file $2
;;
tail)
tail_file $2
;;
*)
echo "Invalid Option :-("
exit 1
esac
exit 0