小编Pas*_*cal的帖子

Bash中的命令行参数

我想写一个带有不同参数的bash脚本.它应该像普通的linux控制台程序一样使用:

my_bash_script -p 2 -l 5 -t 20
Run Code Online (Sandbox Code Playgroud)

因此,值2应保存在名为pages的变量中,参数l应保存在名为length的变量中,值20应保存在可变时间内.

做这个的最好方式是什么?

bash command-line-arguments

73
推荐指数
2
解决办法
6万
查看次数

为什么干净的代码禁止其他表达

我在函数中有这个代码:

if ($route !== null) { // a route was found
    $route->dispatch();
} else {
    // show 404 page
    $this->showErrorPage(404);
}
Run Code Online (Sandbox Code Playgroud)

现在PHPmd给出了一个错误:

run方法使用else表达式.否则永远不需要,您可以简化代码,而无需其他工作.

现在我想知道是否真的会更好的代码来避免else而只是在if部分添加一个return语句?

php phpmd

16
推荐指数
3
解决办法
4292
查看次数

建一个字符串

我有这个代码:

#!/bin/bash

input="./user.cvs"

while IFS=';' read -r f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13
do

  path="./QRcodes/$f2$f3.png"

  vcard="BEGIN:VCARD%0AN;CHARSET=utf-8:$f3;$f2;;$f1;%0AADR;CHARSET=utf-8;INTL;PARCEL;WORK:;;$f10;$f11;;$f12;$f13%0AEMAIL;INTERNET:$f6%0AORG:$f4%0ATEL;WORK:$f8%0ATEL;FAX;WORK:$f9%0ATITLE:$f5%0AURL;WORK:$f7%0AEND:VCARD"

  latex=""

  encodedVCard=$(echo "$vcard" | sed -e 's/\+/\%2B/g')

  url="http://api.qrserver.com/v1/create-qr-code/?size=300x300&data=$encodedVCard"

  wget -O "$path" "$url"

  latex+="\n \\begin{tabular}{ C C } \\includegraphics[height=30mm]{graphic.png} & Name \\\\ \\end{tabular}"

  echo $latex

done < "$input"
Run Code Online (Sandbox Code Playgroud)

一切正常,除了'echo $ latex'总是打印相同的行而不是多次.我错过了什么?

bash ubuntu

9
推荐指数
1
解决办法
2万
查看次数

在 vim 启动时忽略 vimrc 中的所有错误

我正在尝试创建一个 Ansible 脚本来设置我的 mac。一种作用是设置vim。首先将我的点文件克隆到本地文件夹并将它们符号链接到 ~/. 在我的 vimrc 中,我使用 vundle 来安装扩展。所以我尝试启动 vim 来安装所有这样的扩展:

- name: vim | Install vundle plugins
  shell: vim  +PluginInstall +qall
Run Code Online (Sandbox Code Playgroud)

但是当我开始这个时,我收到错误:

E185: Cannot find color scheme 'molokai'
Run Code Online (Sandbox Code Playgroud)

是否可以在第一次启动时抑制此错误消息?

vim ansible vundle

8
推荐指数
2
解决办法
1721
查看次数

std :: condition_variable为什么它需要一个std :: mutex

我不确定我是否真的理解为什么std::condition_variable需要额外std::mutex的参数?它不应该被自己锁定吗?

#include <iostream>
#include <condition_variable>
#include <thread>
#include <chrono>

std::condition_variable cv;
std::mutex cv_m;
int i = 0;
bool done = false;

void waits()
{
    std::unique_lock<std::mutex> lk(cv_m);
    std::cout << "Waiting... \n";
    cv.wait(lk, []{return i == 1;});
    std::cout << "...finished waiting. i == 1\n";
    done = true;
}

void signals()
{
    std::this_thread::sleep_for(std::chrono::seconds(1));
    std::cout << "Notifying falsely...\n";
    cv.notify_one(); // waiting thread is notified with i == 0.
                     // cv.wait wakes up, checks i, and goes back to waiting

    std::unique_lock<std::mutex> …
Run Code Online (Sandbox Code Playgroud)

condition-variable c++11

5
推荐指数
1
解决办法
1024
查看次数

将 uint64_t 转换为 time_point

我有一个uint64_t值代表自纪元以来的纳秒。现在我需要将其转换为time_point.

目前我有这个代码:

std::chrono::time_point<std::chrono::nanoseconds> uptime(std::chrono::nanoseconds(deviceUptime));
Run Code Online (Sandbox Code Playgroud)

后来我想打印类似的东西Fri Feb 10 15:13:04 2017。为此,我想使用此代码:

std::time_t t = std::chrono::system_clock::to_time_t(uptime);
std::cout << "Device time: " << std::ctime(&t) << std::endl;
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误:

No viable conversion from 'time_point<std::chrono::nanoseconds>' to 'const time_point<std::__1::chrono::system_clock>'
Run Code Online (Sandbox Code Playgroud)

我必须做什么才能将 转换为可以使用time_point的格式ctime?或者有没有更好的方法来解决这个问题?

c++ time c++11 c++-chrono

4
推荐指数
1
解决办法
4809
查看次数

将UITableView划分为固定数量的单元格

我创建了一个UIViewController,它有一个标题并包含一个UITableView.现在我想将UITableView的整个高度划分为6个单元格.我尝试了tableView.frame.size.height,然后设置tableView.rowHeight = tableViewHeight / 6.但是当我启动应用程序时,表视图的底部仍然留有一些空间.还有另外一种方法吗?

uitableview ios swift

3
推荐指数
1
解决办法
140
查看次数

编写一个在后台运行并每小时执行一次操作的程序

我想在C#中编写一个应用程序,它在大多数时候都在后台运行.它应该只显示TrayIcon.为此,我找到了一个教程:http://www.simple-talk.com/dotnet/.net-framework/creating-tray-applications-in-.net-a-practical-guide/

但是,如何告诉我的程序每小时运行一次?什么是实现这一目标的最佳方式.计时器?应用程序应尽可能少地使用资源.

谢谢

c# windows background

2
推荐指数
1
解决办法
4049
查看次数

选择具有指定id的条目,以及使用相同外键值前后的一个条目

我有一张看起来像这样的桌子:

| id | fk_book | name |
-----------------------
| 1  | 2       | test1|
| 3  | 2       | test3|
| 6  | 3       | notes|
| 7  | 2       | test2|
Run Code Online (Sandbox Code Playgroud)

不,我想获得id为3. select*from test where id = 3 AND fk_book = 1;

但是还有一种方法可以获得id为1和7的项目吗?我不知道其他条目的ID

谢谢

php mysql

2
推荐指数
1
解决办法
62
查看次数

iOS:UITableView单元格在滚动时更改选择状态

所以我不知道如何写一个简单的标题来解释我的问题.

我的屏幕上有一个UITableView.只要表格视图小于屏幕(所有单元格都适合屏幕而不滚动),一切都很好.但是,一旦用户需要滚动屏幕以找到位于表格底部的单元格,一些单元格就会随机更改其选择状态.我像这样实现了UITableView:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSString *simpleTableIdentifier = @"";

    switch (indexPath.section)
    {
        case 1:
        {
            if (indexPath.row == 0)
            {
                simpleTableIdentifier = @"EventDateCell";
            }
            else
            {
                simpleTableIdentifier = @"EventDateSelectCell";
            }

            [...]

            return cell;
        }break;

        case 2:
        {
            simpleTableIdentifier = @"SelectPlayerCell";

            UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];

            if (cell == nil)
            {
                cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
            }

            Player *player = [self.playerController getPlayerAtPosition:indexPath.row];

            cell.textLabel.text = [NSString stringWithFormat:@"%@", player.persistentData.name];

            return cell;
        }break;

        default:
        {
            simpleTableIdentifier = @"EventNameCell";

            [...] …
Run Code Online (Sandbox Code Playgroud)

objective-c uitableview ios

2
推荐指数
1
解决办法
3023
查看次数