انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: 🇬🇧بریتانیای کبیر🇬🇧 در 19 خرداد 1402، 10:06 ب‌ظ

عنوان: نحوه i/o redirection دستور time (حل شد)
ارسال شده توسط: 🇬🇧بریتانیای کبیر🇬🇧 در 19 خرداد 1402، 10:06 ب‌ظ
چجوری میتونم i/o redirection دستور time را تغیر بدم؟
مثلا مثل دستور های زیر که کار نمیکنه
time echo salam > logbash -c 'time echo salam' > log
عنوان: پاسخ : نحوه i/o redirection دستور test
ارسال شده توسط: دانیال بهزادی در 20 خرداد 1402، 08:21 ب‌ظ
tee رو آزمودی؟
عنوان: پاسخ : نحوه i/o redirection دستور time
ارسال شده توسط: َUxmlai-ad در 20 خرداد 1402، 09:20 ب‌ظ
یعنی میخواهی خروجی time رو توی پرونده بنویسه؟

echo `time echo salam` > log
عنوان: پاسخ : نحوه i/o redirection دستور time
ارسال شده توسط: esmaeelE در 22 خرداد 1402، 03:53 ق‌ظ
سوال خوبیه
چون time خروجی را به صورت پیش‌فرض روی standard error می‌ریزه چیزی در فایل نوشته نشده.

man time
DESCRIPTION
       time run the program COMMAND with any given arguments ARG....  When
       COMMAND finishes, time displays information about resources used by
       COMMAND (on the standard error output, by default
).


به این شکل می‌تونید خروجی را در فایل بریزید.

time (sleep 1) 2> output

https://stackoverflow.com/a/13356654/7508077
https://www.baeldung.com/linux/redirect-time-output

عنوان: پاسخ : نحوه i/o redirection دستور time (حل شد)
ارسال شده توسط: Dragon- در 20 تیر 1402، 06:34 ب‌ظ
اینجوری stderr اون برنامه‌ای که اجرا شده هم وارد همون فایل میشه.
عنوان: پاسخ : نحوه i/o redirection دستور time (حل شد)
ارسال شده توسط: esmaeelE در 22 تیر 1402، 10:32 ب‌ظ
اینجوری stderr اون برنامه‌ای که اجرا شده هم وارد همون فایل میشه.

با چنین چیزی درست می‌شه یا منظورتون چیز دیگریست؟

time (./run.sh 2> err 1>out) 2> tout


run.sh#!/bin/bash

echo "write to stderr" >&2
echo "write to stdout" >&1


عنوان: پاسخ : نحوه i/o redirection دستور time (حل شد)
ارسال شده توسط: Dragon- در 23 تیر 1402، 08:58 ب‌ظ
آره منظورم همینه. فقط اگه میشد خروجی اون برنامه رو توی ترمینال هم دید بهتر بود.