Làm cách nào chúng tôi có thể đánh giá sổ ghi chép Mathematica từ dòng lệnh (tức là khi chạy hạt nhân ở chế độ dòng lệnh)?Cách đánh giá sổ ghi chép từ dòng lệnh?
Giả sử chúng tôi đang làm việc trên máy từ xa. Tôi biết nó có thể chuyển đổi sổ ghi chép thành một tập tin m, và đánh giá nó, nhưng tôi tò mò nếu nó có thể làm điều này trực tiếp bằng cách sử dụng sổ ghi chép.
Đây là những gì tôi có cho đến nay:
Thứ nhất, we need to start a headless X server trên máy Linux từ xa, do đó kết thúc trước có thể chạy ở đó (và mở máy tính xách tay). Bỏ qua bước này nếu bạn đang làm việc trên máy cục bộ.
Xvfb :1 &
export DISPLAY=:1
Sau khi tôi bắt đầu một hạt nhân Mathematica (math
) và làm như sau.
Cần sử dụng UsingFrontEnd
vì mở sổ ghi chép yêu cầu giao diện người dùng. test.nb có một ô nhập có chứa a=1
.
In[1]:= [email protected]["test.nb"]
Out[1]= -NotebookObject-
Sau khi cố gắng đánh giá máy tính xách tay, rõ ràng tôi nhận được một dialog, và tôi cần phải sử dụng Return[]
trở lại. Tôi không chắc chắn lý do tại sao dòng đầu vào bắt đầu đếm từ 1 lần nữa (một hạt nhân mới đã được bắt đầu bởi giao diện người dùng?) Lưu ý rằng a
không đạt được giá trị.
In[2]:= [email protected][nb]
In[1]:= a
Out[1]= a
In[2]:= Return[]
Out[2]= a
Sau khi trở về từ hộp thoại, a
vẫn không có giá trị.
In[3]:= a
Out[3]= a
Hình như chúng ta đang làm việc trong một cách tương tự và không kém phần lười biếng! – acl
+1 Tôi cũng muốn biết điều này! Tôi rất muốn đánh giá sổ ghi chép của mình trên một hệ thống từ xa trên HPC của chúng tôi. –