Câu hỏi được gắn thẻ «shell-script»

Các câu hỏi về tập lệnh shell, tập tin thực thi được giải thích bởi trình bao (bash, zsh, v.v.).

2
Kiểm tra xem có tồn tại nhiều phụ thuộc trước khi cài đặt gói trong Debian hoặc Ubuntu không
Tôi đã biết rằng tôi có thể kiểm tra xem có cần nhiều phụ thuộc để cài đặt gói trong Debian hoặc Ubuntu trong kho của tôi không bằng cách chạy lệnh sau: apt policy first-package second-package ... last-package Lệnh này cũng cho tôi biết nếu tôi có mỗi gói …

2
Thêm tệp vào tệp tbz
Tôi đang tìm cách cập nhật hàng ngàn tệp lưu trữ .tbz, vì vậy tôi sẽ thực hiện việc này với tập lệnh shell. Tôi cần thêm một tệp cho mỗi tệp. Câu hỏi của tôi là, có cách nào nhanh hơn để làm điều này mà không cần trích …

4
Làm thế nào để thay đổi giá trị mảng trong bash
chúng tôi muốn xây dựng 6 thư mục điểm gắn kết làm ví dụ /data/sdb /data/sdc /data/sdd /data/sde /data/sdf /data/sdg Vì vậy, chúng tôi đã viết kịch bản bash đơn giản này bằng cách sử dụng mảng folder_mount_point_list="sdb sdc sdd sde sdf sdg" folderArray=( $folder_mount_point_list ) counter=0 for i in …


2
ls bỏ qua không có trận đấu nào
Tôi muốn liệt kê tất cả các tệp trong một thư mục được gọi là foldernamecó phần mở rộng test, atesthoặc btest. Suy nghĩ trước mắt của tôi là chạy ls ./foldername/*.{a,b,}test Điều này hoạt động tốt trừ khi không có gì với phần mở rộng atest, trong trường hợp …

4
Chia chuỗi bằng IFS
Tôi đã viết một tập lệnh mẫu để phân tách chuỗi nhưng nó không hoạt động như mong đợi #!/bin/bash IN="One-XX-X-17.0.0" IFS='-' read -r -a ADDR <<< "$IN" for i in "${ADDR[@]}"; do echo "Element:$i" done #split 17.0.0 into NUM IFS='.' read -a array <<<${ADDR[3]}; for element in "${array[@]}" do …

3
Tham chiếu các biến mảng bash từ mảng khác
Tôi muốn viết một tập lệnh để tham chiếu nhiều mảng từ một mảng khác chứa các tên biến của mảng này. Đây là mã của tôi cho đến nay: #!/bin/bash array1=('array1string1' 'array1string2') array2=('array2string1' 'array2string2') array_names=('array1' 'array2') for a in ${array_names[@]} do for b in ${a[@]} do echo $b done …

1
Tạo hàm cp của riêng tôi trong bash
Đối với một bài tập, tôi được yêu cầu viết khéo léo một hàm bash có chức năng cơ bản giống như hàm cp(bản sao). Nó chỉ phải sao chép một tập tin này sang tập tin khác, vì vậy không có nhiều tập tin được sao chép vào một …

5
Thay đổi mục cuối cùng trong danh sách được phân cách bằng dấu phẩy
Tôi có một tệp văn bản lớn trông như thế này: 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,3 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,8 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,14 36,53,15596,0.58454577855,0.26119,2.24878677855,0.116147072052964,12 Đầu ra mong muốn là đây: 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,MI-03 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,MI-08 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,MI-14 36,53,15596,0.58454577855,0.26119,2.24878677855,0.116147072052964,MI-12 Tôi đã thử các bài đăng có liên quan khác ở đây và trên các cộng đồng khác nhưng không thể có được chính xác …

2
Đường ống từ một tìm thấy vào grep
Tôi đang cố gắng làm gì? Viết lệnh tìm kiếm bất kỳ tệp nào không được yêu cầu bởi bất kỳ tệp nào khác trong dự án của tôi. Tôi đã thử những gì? Tôi đang sử dụng findđể có được một danh sách tên tập tin. Bây giờ tôi …


2
Chạy trong khi đúng trong tập lệnh systemd
Tôi đã nhận được một kịch bản bash về cơ bản này: #!/bin/bash [...] while true; do str="broadcast "`randArrayElement "messages[@]"` server_send_message $str sleep $interval done Bây giờ tôi muốn chạy nó như một dịch vụ systemd, tập lệnh dịch vụ của tôi trông như thế này: [Unit] Description=Announcer After=network.target [Service] …



1
Bẫy Ctrl-C trong tập lệnh awk
Tôi tin rằng Ctrl- Ccó thể bị mắc kẹt trong các tập lệnh bash. Có phải cũng có thể nhốt nó bên trong một tập lệnh Awk để xử lý sự kiện đó không? Ví dụ, để hủy bỏ xử lý, nhưng in kết quả của những gì đã được …

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.