Saya memiliki sistem yang hanya bisa saya masuki di bawah nama pengguna (pengguna saya), tetapi saya harus menjalankan perintah sebagai pengguna lain (pengguna skrip). Sejauh ini, saya telah datang dengan yang berikut untuk menjalankan perintah yang saya butuhkan:
ssh -tq myuser@hostname "sudo -u scriptuser bash -c \"ls -al\""
Namun jika, ketika saya mencoba menjalankan perintah yang lebih kompleks, seperti [[ -d "/tmp/Some directory" ]] && rm -rf "/tmp/Some directory"
saya dengan cepat mendapat masalah dengan mengutip. Saya tidak yakin bagaimana saya bisa mengirimkan contoh perintah kompleks ini bash -c
, ketika \"
sudah membatasi batas-batas perintah yang saya lewati (dan jadi saya tidak tahu bagaimana cara mengutip / tmp / Direktori tertentu, yang mencakup spasi.
Apakah ada solusi umum yang memungkinkan saya untuk meloloskan perintah apa pun, tidak peduli seberapa kompleks / gila penawarannya, atau apakah ini semacam batasan yang telah saya capai? Apakah ada solusi lain yang mungkin dan mungkin lebih mudah dibaca?