คำถามติดแท็ก bash

สำหรับคำถามเกี่ยวกับสคริปต์ที่เขียนขึ้นสำหรับเชลล์คำสั่ง Bash สำหรับเชลล์สคริปต์ที่มีข้อผิดพลาด / ข้อผิดพลาดทางไวยากรณ์โปรดตรวจสอบด้วยโปรแกรม shellcheck (หรือในเซิร์ฟเวอร์ shellcheck เว็บที่ https://shellcheck.net) ก่อนโพสต์ที่นี่ คำถามเกี่ยวกับการใช้งานอินเทอร์แอคทีฟของ Bash นั้นมีแนวโน้มที่จะอยู่ในหัวข้อของผู้ใช้ขั้นสูงมากกว่าในสแต็คโอเวอร์โฟลว์

8
ฉันจะตรวจสอบใน bash ได้อย่างไรว่าไฟล์ถูกสร้างขึ้นนานกว่า x ครั้งก่อนหรือไม่
ฉันต้องการตรวจสอบใน linux bash ว่ามีการสร้างไฟล์เกิน x ครั้งที่แล้วหรือไม่ สมมติว่าไฟล์นี้เรียกว่า text.txt และเวลาคือ 2 ชั่วโมง if [ what? ] then echo "old enough" fi
106 linux  bash  command-line 

17
จะนับจำนวนไฟล์ในแต่ละไดเร็กทอรีได้อย่างไร?
ฉันสามารถแสดงรายการไดเรกทอรีทั้งหมดโดย find ./ -type d ฉันพยายามแสดงรายการเนื้อหาของแต่ละไดเร็กทอรีและนับจำนวนไฟล์ในแต่ละไดเร็กทอรีโดยใช้คำสั่งต่อไปนี้ find ./ -type d | xargs ls -l | wc -l แต่นี่รวมจำนวนบรรทัดทั้งหมดที่ส่งคืนด้วย find ./ -type d | xargs ls -l มีวิธีการนับจำนวนไฟล์ในแต่ละไดเร็กทอรีหรือไม่?
106 linux  bash  ubuntu 

6
วิธีการส่งตัวแปรที่มีเครื่องหมายทับไปยัง sed
คุณส่งตัวแปรที่มีเครื่องหมายทับเป็นรูปแบบไปยังsedอย่างไร? ตัวอย่างเช่นหากฉันมีตัวแปรต่อไปนี้: var="/Users/Documents/name/file" ฉันต้องการส่งต่อให้sedเป็นดังนี้: sed "s/$var/replace/g" "$file" อย่างไรก็ตามฉันได้รับข้อผิดพลาด ฉันจะหลีกเลี่ยงปัญหาได้อย่างไร
106 bash  sed 

6
จะสร้าง loop ใน bash ที่รอให้เว็บเซิร์ฟเวอร์ตอบกลับได้อย่างไร?
จะสร้าง loop ใน bash ที่รอให้เว็บเซิร์ฟเวอร์ตอบกลับได้อย่างไร? ควรพิมพ์ "." ทุกๆ 10 วินาทีหรือมากกว่านั้นและรอจนกว่าเซิร์ฟเวอร์จะเริ่มตอบสนอง อัปเดตรหัสนี้จะทดสอบว่าฉันได้รับการตอบสนองที่ดีจากเซิร์ฟเวอร์หรือไม่ ถ้า curl --output / dev / null --silent --head --fail "$ url"; แล้ว echo "มี URL อยู่: $ url" อื่น echo "ไม่มี URL: $ url" fi
106 bash 

9
วิธีการเปิดใช้งาน Virtualenv ในสคริปต์ Bash
คุณสร้างสคริปต์ Bash เพื่อเปิดใช้งาน Python Virtualenv ได้อย่างไร? ฉันมีโครงสร้างไดเรกทอรีเช่น: .env bin activate ...other virtualenv files... src shell.sh ...my code... ฉันสามารถเปิดใช้งาน Virtualenv ของฉันได้โดย: user@localhost:src$ . ../.env/bin/activate (.env)user@localhost:src$ อย่างไรก็ตามการทำสิ่งเดียวกันจากสคริปต์ Bash ไม่ได้ทำอะไรเลย: user@localhost:src$ cat shell.sh #!/bin/bash . ../.env/bin/activate user@localhost:src$ ./shell.sh user@localhost:src$ ผมทำอะไรผิดหรือเปล่า?
106 python  bash  virtualenv 

9
วิธีการส่งค่าของตัวแปรไปยัง stdin ของคำสั่ง?
ฉันกำลังเขียนเชลล์สคริปต์ที่ควรปลอดภัยเช่นไม่ส่งผ่านข้อมูลที่ปลอดภัยผ่านพารามิเตอร์ของคำสั่งและไม่ควรใช้ไฟล์ชั่วคราว ฉันจะส่งตัวแปรไปยัง stdin ของคำสั่งได้อย่างไร หรือถ้าเป็นไปไม่ได้จะใช้ไฟล์ชั่วคราวสำหรับงานดังกล่าวได้อย่างไร?
105 security  bash  stdin 

5
เครื่องหมายอัฒภาคไม่จำเป็นที่ท้ายบรรทัดในเชลล์สคริปต์?
ฉันมีเชลล์สคริปต์ซึ่งมีสิ่งต่อไปนี้: case $1 in 0 ) echo $1 = 0; OUTPUT=3;; 1 ) echo $1 = 1; OUTPUT=4;; 2 ) echo $1 = 2; OUTPUT=4;; esac HID=$2; BUNCH=16; LR=.008; คือ อัฒภาคสมบูรณ์ฟุ่มเฟือยในตัวอย่างข้างต้นหรือไม่ และมีเหตุผลใดที่บางคนใช้อัฒภาคสองชั้น? ดูเหมือนว่าอัฒภาคเป็นเพียงตัวคั่นซึ่งเป็นสิ่งที่คุณจะใช้แทนบรรทัดใหม่
105 bash  shell  syntax 

7
วิธีซ่อนเอาต์พุตคำสั่งใน Bash
ฉันต้องการทำให้สคริปต์ Bash ของฉันสวยงามยิ่งขึ้นสำหรับผู้ใช้ปลายทาง ฉันจะซ่อนเอาต์พุตได้อย่างไรเมื่อ Bash รันคำสั่ง ตัวอย่างเช่นเมื่อ Bash ดำเนินการ yum install nano สิ่งต่อไปนี้จะปรากฏต่อผู้ใช้ที่ทำการ Bash: Loaded plugins: fastestmirror base | 3.7 kB 00:00 base/primary_db | 4.4 MB 00:03 extras | 3.4 kB 00:00 extras/primary_db | 18 kB 00:00 updates | 3.4 kB 00:00 updates/primary_db | 3.8 MB 00:02 Setting up Install …
105 bash  shell 

2
คัดลอกไฟล์จาก Windows ไปยังระบบย่อย Ubuntu [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน2 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันเปิดใช้งานโหมดนักพัฒนาและติดตั้งBash on Ubuntu on Windowsแล้ว โฮมไดเร็กทอรีของฉันสามารถพบได้ภายใต้%localappdata%\Lxss\home\<ubuntu.username>\ฉันได้สร้างไดเร็กทอรีย่อยชื่อ Pictures เพื่อให้เส้นทางแบบเต็มควรเป็น บน windows: C:\Users\<windows.username>\AppData\Local\lxss\home\<ubuntu.username>\Pictures เมื่อทุบตี: /home/<ubuntu.username>/Pictures ถ้าฉันสร้างไฟล์จาก bash โดยใช้คำสั่งtouch hello.txtฉันสามารถดูไฟล์นี้ได้อย่างอิสระใน Windows UI และคัดลอกไปยังเดสก์ท็อปของฉัน แต่ถ้าฉันจะสร้างแฟ้มข้อความใหม่จากหน้าต่าง UI และบันทึกไว้ในแม้ว่าผมจะรีสตาร์ททุบตีหรือหน้าต่างไฟล์ไม่สามารถมองเห็นได้เมื่อฉันทำC:\Users\<windows.username>\AppData\Local\lxss\home\<ubuntu.username>\Picturesls -l ทำไม bash ไม่เห็นไฟล์ที่สร้างจากฝั่ง Windows ในโฮมไดเร็กทอรีของตัวเอง การแก้ไขการใช้/mnt/cไม่ใช่วิธีแก้ปัญหาฉันพยายามทำความเข้าใจว่าเหตุใดจึงไม่เห็นไฟล์เหล่านั้นและหากมีวิธีแก้ไขเพื่อให้สามารถมองเห็นไฟล์ที่สร้าง UI แทนที่จะพยายามใช้เทอร์มินัลเพื่อคัดลอก - วางหรือย้ายไฟล์ไป

7
การส่งผ่านตัวแปรในคำสั่ง ssh ระยะไกล
ฉันต้องการรันคำสั่งจากเครื่องของฉันโดยใช้ ssh และส่งผ่านตัวแปรสภาพแวดล้อม $BUILD_NUMBER นี่คือสิ่งที่ฉันกำลังพยายาม: ssh pvt@192.168.1.133 '~/tools/myScript.pl $BUILD_NUMBER' $BUILD_NUMBER ถูกตั้งค่าบนเครื่องที่ทำการโทร ssh และเนื่องจากตัวแปรไม่มีอยู่บนโฮสต์ระยะไกลจึงไม่ถูกหยิบขึ้นมา ฉันจะส่งผ่านค่าของ$BUILD_NUMBER?
105 linux  bash  shell  ssh 

4
ตรวจสอบว่ามีการติดตั้งแพ็คเกจ homebrew หรือไม่
ฉันกำลังจะเขียนเชลล์สคริปต์เพื่อตรวจสอบว่ามีการติดตั้งแพ็กเกจโฮมบรูว์ในระบบหรือไม่ มีวิธีใช้คำสั่งชงเพื่อให้บรรลุสิ่งนั้นหรือไม่? ฉันลองใช้รหัสทางออกของbrew install <formula> --dry-run. แต่สิ่งนี้จะสร้างแพ็คเกจหากขาดหายไป
104 bash  shell  homebrew 

4
แสดงรายการไฟล์ตามวันที่แก้ไขล่าสุด
ฉันมีไดเร็กทอรี: /home/user/ ฉันจะแสดงรายการไฟล์ทั้งหมดในไดเร็กทอรีนี้ได้อย่างไร (รวมถึงไฟล์ในไดเร็กทอรีย่อย) และเรียงลำดับตามวันที่แก้ไขล่าสุด
104 bash  shell 

7
ขอบเขตตัวแปร Bash
โปรดอธิบายให้ฉันทราบว่าเหตุใดข้อความสุดท้ายechoจึงว่างเปล่า? ฉันคาดว่าXCODEจะเพิ่มขึ้นใน while loop เป็นค่า 1: #!/bin/bash OUTPUT="name1 ip ip status" # normally output of another command with multi line output if [ -z "$OUTPUT" ] then echo "Status WARN: No messages from SMcli" exit $STATE_WARNING else echo "$OUTPUT"|while read NAME IP1 IP2 STATUS do if [ "$STATUS" != "Optimal" …
104 bash  scope  pipe 

8
เราจะเปลี่ยนภาษาของอินเทอร์เฟซบรรทัดคำสั่งของ Git ได้อย่างไร?
ฉันต้องการเปลี่ยนภาษาของ git (เป็นภาษาอังกฤษ) ในการติดตั้ง Linux โดยไม่เปลี่ยนภาษาสำหรับโปรแกรมอื่นและไม่พบการตั้งค่า ทำอย่างไร?

5
พารามิเตอร์สคริปต์ใน Bash
ฉันกำลังพยายามสร้างเชลล์สคริปต์ซึ่งควรใช้ในลักษณะนี้: ocrscript.sh -from /home/kristoffer/test.png -to /home/kristoffer/test.txt จากนั้นสคริปต์ ocr จะแปลงไฟล์รูปภาพเป็นไฟล์ข้อความ นี่คือสิ่งที่ฉันคิดมาจนถึงตอนนี้: #!/bin/bash export HOME=/home/kristoffer /usr/local/bin/abbyyocr9 -rl Swedish -if ???fromvalue??? -of ???tovalue??? 2>&1 แต่ฉันไม่รู้วิธีรับ-fromและ-toค่า มีแนวคิดในการทำอย่างไร?
104 linux  bash  shell  parameters 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.