คำตอบ:
ขึ้นอยู่กับสิ่งที่คุณต้องการให้ไฟล์มี:
touch /path/to/file
สำหรับไฟล์ว่างsomecommand > /path/to/file
สำหรับไฟล์ที่มีเอาต์พุตของคำสั่งบางคำสั่ง
eg: grep --help > randomtext.txt
echo "This is some text" > randomtext.txt
nano /path/to/file
หรือvi /path/to/file
(หรือany other editor emacs,gedit etc
)
มันจะเปิดไฟล์ที่มีอยู่สำหรับการแก้ไขหรือสร้าง & เปิดไฟล์เปล่าเพื่อป้อนหากไม่มีอยู่
printf "some long message\nwith newlines\n" > file
นอกจากนี้ยังมี โชคดีทุกคน.
touch
จะทำงานใน UNIX เพราะเป็นเครื่องมือมาตรฐาน somecommand
ตัวอย่างจะทำงานเพราะมันใช้ไวยากรณ์มาตรฐาน nano
ตัวอย่างอาจไม่ทำงานเนื่องจากเป็นบรรณาธิการชื่อnano
อาจไม่ได้รับการติดตั้ง (นาโนไม่ได้มาตรฐาน) ตัวแก้ไขมาตรฐานคือed
และสามารถใช้แทนnano
หรือคุณสามารถใช้$EDITOR
ตัวแก้ไขข้อความเริ่มต้นที่ผู้ใช้หรือระบบกำหนดถ้ามี
>/path/to/file
touch
ใช้การสัมผัส
touch filename
สร้างไฟล์โดยใช้ cat
$ cat > myfile.txt
ตอนนี้เพียงแค่พิมพ์สิ่งที่คุณต้องการในไฟล์:
Hello World!
CTRL-D เพื่อบันทึกและออก
cat /etc/systemd/system/sample.service
มันบอกว่า "ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว" แทนที่จะสร้างไฟล์ sample.service ใหม่
cat /etc/systemd/system/sample.service
พิมพ์ไฟล์ไปที่คอนโซลcat > /etc/systemd/system/sample.service
เปลี่ยนเส้นทางอินพุตมาตรฐานไปยังไฟล์ (ซึ่งเป็นสาเหตุที่คุณต้องปิดอินพุตมาตรฐานโดยกด control-d.
มีวิธีแก้ปัญหาที่เป็นไปได้หลายประการ:
touch file
>file
echo -n > file
printf '' > file
echo
รุ่นจะทำงานเฉพาะถ้ารุ่นของคุณecho
สนับสนุน-n
สวิทช์เพื่อขึ้นบรรทัดใหม่ปราบ นี่คือการเพิ่มที่ไม่ได้มาตรฐาน ตัวอย่างอื่น ๆ ทั้งหมดจะทำงานใน POSIX เชลล์
echo '' > file
printf '\n' > file
นี่เป็น "ไฟล์ข้อความ" ที่ถูกต้องเพราะมันจะลงท้ายด้วยบรรทัดใหม่
"$EDITOR" file
echo 'text' > file
cat > file <<END \
text
END
printf 'text\n' > file
สิ่งเหล่านี้เทียบเท่ากัน $EDITOR
คำสั่งอนุมานว่าคุณมีโปรแกรมแก้ไขข้อความโต้ตอบกำหนดไว้ในตัวแปรสภาพแวดล้อม EDITOR และที่คุณโต้ตอบป้อนข้อความเทียบเท่า cat
รุ่นทึกทักขึ้นบรรทัดใหม่ที่แท้จริงหลัง\
และหลังแต่ละสายอื่น ๆ นอกจากนั้นสิ่งเหล่านี้ทั้งหมดจะทำงานใน POSIX เชลล์
แน่นอนว่ายังมีวิธีอื่นอีกมากมายในการเขียนและสร้างไฟล์เช่นกัน
รวมทั้งสร้างไฟล์ว่าง:
touch myfile.txt
วิธีสร้างไฟล์ข้อความบน Linux:
touch
เพื่อสร้างไฟล์ข้อความ:$ touch NewFile.txt
cat
เพื่อสร้างไฟล์ใหม่: $ cat NewFile.txt
>
เพื่อสร้างไฟล์ข้อความ:$ > NewFile.txt
nano MyNewFile
vi MyNewFile
NameOfTheEditor NewFileName
ฮ่าฮ่า! มันเป็นเรื่องง่าย! ลองนี้:
$ touch filename
คุณสามารถใช้touch
คำสั่งตามที่คนอื่นพูดว่า:
touch filename
หากต้องการเขียนลงไฟล์บนบรรทัดคำสั่งคุณสามารถใช้echo
หรือprintf
:
echo "Foo" > filename
printf "Foo" > filename
บางทีคุณอาจมีปัญหากับการอนุญาต หากคุณได้รับข้อผิดพลาดต่อไปนี้: bash: filename: Permission denied
คุณต้องใช้sudo bash -c 'echo "Foo" > filename'
ตามที่อธิบายไว้ที่นี่:
/ubuntu/103643/cannot-echo-hello-x-txt-even-with-sudo
วิธีที่ 1
echo -n > filename.txt
วิธีที่ 2
> filename.txt
วิธีที่ 3
touch filename.txt
เพื่อดูเนื้อหาไฟล์
vi filename.txt
สิ่งนี้จะสร้างไฟล์เปล่าที่มีการประทับเวลาปัจจุบัน
touch filename
ง่ายเหมือนที่:
> filename
touch filename
สำหรับคำสั่งการpermission denied
ใช้ข้อผิดพลาดsudo
เป็น:
sudo touch filename
คุณสามารถใช้touch
คำสั่งเพื่อสร้างไฟล์ว่างใหม่
ฉันชอบตัวแก้ไขบรรทัดคำสั่งnano (ข้อความ):
nano filename
ในกรณีที่พวกคุณกำลังพยายามสร้างไฟล์ใหม่ แต่มันบอกว่า: 'File does not exist'
มันเป็นเพียงเพราะคุณยังเข้าถึงไดเรกทอรีซึ่งยังไม่มีอยู่ คุณต้องสร้างไดเรกทอรีที่ไม่มีอยู่ทั้งหมดก่อนโดยใช้mkdir /path/to/dir
คำสั่ง
เพื่อสร้างไฟล์เปล่าที่มีความเป็นเจ้าของและสิทธิ์ใช้งานโดยติดตั้ง
sudo install -v -oUSER -gGROUP -m640 /dev/null newFile.txt
sudo
นี้มีประโยชน์ในหลาย ๆ สถานการณ์ แต่ไม่ได้เป็นส่วนหนึ่งของคำตอบสำหรับคำถามของ OP โดยตรง
หนึ่งในวิธีที่ง่ายที่สุดและรวดเร็ว
$ vim filename
$>newfile
ยังสามารถสร้างไฟล์